老年代的垃圾回收要点

时间:2021-12-29 17:21:46
需要留意新生代的内存回收算法是mark copy(标记复制)算法,老年代的是标记回收算法。
默认的PS算法,CMS需要显示设置。


PS(Parallel Scavenge)垃圾收集器:
1 垃圾回收阶段暂停当前的java程序
2 采用标记清楚算法回收空闲空间
3 回收后执行碎片整理,把空闲空间后移


CMS(Concurrent Mark Sweep)垃圾收集器
3次标记和一次清除
3次标记:
1 暂停后从可达对象根节点标记一层子节点
2 恢复后继续从已标记的节点继续标记
3 暂停一次,采用多线程方式补充标记
4 执行清除


参考资料
深入浅出的讲解垃圾回收过程:  http://www.jianshu.com/p/778dd3848196