为什么标记压缩比标记复制慢



有一种说法是,标记压缩比标记复制慢。但为什么呢?由于两种算法都需要移动活体。

与垃圾收集有关的任何事情一样,它很复杂。

直观的推理是,标记压缩需要对所有对象进行额外的遍历(可达和不可达(,以找到需要压缩的可达对象。此外,在压缩过程中修复对象中的指针(通常(比在从空间到空间的复制过程中要多。(或者,如果你不签约,你将在其他领域支付绩效罚款。(

然而,在中;垃圾收集:用于自动动态内存管理的算法"以上,标记扫描更有效。

(注意,r*将小于0.5。单代拷贝收集器仅适用于r小于0.5的情况。(

如果你真的想了解,我建议你买这本书。或者更好的是,最近的";《垃圾收集手册:自动记忆管理的艺术》

最新更新