垃圾收集算法

2018-11-19  本文已影响0人  简书徐小耳

本文只讨论垃圾收集的算法的思想

垃圾收集器 是按照标记存活对象实现的,而标记死亡对象 应该需要扫描所有对象,标记存活对象只需要从gcroot出发即可吧

1.标记-清除 标记死亡对象有点问题 需要扫描所有对象

缺点:标记和清除的效率都慢,其次会造成堆内存空间碎片化,从而导致无法分配大对象,进而引起gc。

2.复制算法(回收新生代)

标记-整理算法(回收老年代)

-类似于标记-清除,在回收对象的时候,是让所有存活的对象都移向一端,然后直接清理掉端边界以外的内存。即所谓的压缩

分代收集法

上一篇下一篇

猜你喜欢

热点阅读