本文重点
本文我们将学习CMS垃圾回收器的日志
使用CMS
java -Xms20M -Xmx20M -XX:+PrintGCDetails -XX:+UseConcMarkSweepGC 类名
日志格式
分析
上面的日志我们分为了两部分,上面表示新生代,下面表示老年代。
ParNew表示年轻代收集器,6144->640表示新生代垃圾收集前空间已经使用了6144,垃圾回收后空间使用了640,总共年轻代的容量为6144。整个堆空间在垃圾收集之前使用了6585,垃圾回收之后使用了2770,总共的堆空间为19840。
下半部分表示CMS的垃圾回收,大体来看,分为四部分:
CMS initial Mark:初始标记
CMS-concurrent-mark(这个又分为了几个子部分)
CMS Final Remark
CMS-concurrent-sweep
CMS-initial-mark:8511K(13696K)表示整个老年代使用了8511,总共有19840,整个堆使用了有9866,总共有19840
CMS-concurrent-mark是并发标记的阶段
CMS Final Remark最终标记,YG occupancy:年轻代占用及容量,CMS-remark: 8511K(13696K): 阶段过后的老年代占用及容量,10108K(19840K): 阶段过后的堆占用及容量。
CMS-concurrent-sweep并发清理
CMS-concurrent-reset重置内部结构,为下次GC做准备