【学习笔记】--- CMS垃圾回收器

      Concurrent Mark Sweep Collector是回收停顿时间比较短,它通过初始标记(Initial Mark),并发标记(Concurrent Mark),重新标记(Remark),并发清除(Concurrent Sweep)四个步骤完成垃圾回收工作,第1,3步的初始标记和重新标记依然会引发STW,而第2,4步的并发标记和并发清除两个阶段可以和应用程序并发执行,也是比较耗时的操作,但并不影响应用程序的正常执行。

      由于CMS采用的是‘标记-清除算法’,因此会产生大量的空间碎片。为了解决这个问题,CMS可以通过配置  -XX:UseCMSCompactAtFullCollection 参数,强制JVM在FGC完成后对老年代进行压缩,执行一次空间碎片整理,但是空间碎片整理也会引发STW,为了减少STW的次数,CMS还可以通过配置 -XX:CMSFullGCsBeforeCompaction=n参数,在执行了n次FGC后,JVM再在老年代执行空间碎片整理。

 

 

图片来源 https://www.cnblogs.com/frinder6/p/5491428.html 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值