垃圾回收-G1算法

Posted 四猿外

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了垃圾回收-G1算法相关的知识,希望对你有一定的参考价值。

G1算法
1.9后默认的垃圾回收算法,特点保持高回收率的同时减少停顿.采用每次只清理一部分,而不是清理全部的增量式清理,以保证停顿时间不会过长

其取消了年轻代与老年代的物理划分,但仍属于分代收集器,算法将堆分为若干个逻辑区域(region),一部分用作年轻代,一部分用作老年代,还有用来存储巨型对象的分区.

同CMS相同,会遍历所有对象,标记引用情况,清除对象后会对区域进行复制移动,以整合碎片空间.

年轻代回收:
并行复制采用复制算法,并行收集,会StopTheWorld.

老年代回收:
会对年轻代一并回收

初始标记完成堆root对象的标记,会StopTheWorld.
并发标记 GC线程和应用线程并发执行.
最终标记完成三色标记周期,会StopTheWorld.
复制/清楚会优先对可回收空间加大的区域进行回收

以上是关于垃圾回收-G1算法的主要内容,如果未能解决你的问题,请参考以下文章

垃圾回收-G1算法

G1 垃圾回收器的理论使用优化

CMS 垃圾回收器与G1 垃圾回收器

CMS 垃圾回收器与G1 垃圾回收器

CMS垃圾回收器

三色标记法与垃圾回收器(CMS、G1)