在启动JVM时,增加 -XX:+PrintGC可以打印垃圾回收日志,或者使用-XX:+PrintGCDetails来打印详细日志,本文介绍的是使用后者参数时打印的日志内容的解读(所用JDK版本为JDK8)
日志部分截图
截图1
截图2
详细说明
Minor GC
[GC (Allocation Failure) [PSYoungGen: 1536K->496K(2048K)] 1536K->1072K(7680K), 0.0031194 secs] [Times: user=0.01 sys=0.00, real=0.00 secs]
GC表示的是进行一次Minor GC
Allocation Failure表示分配担保失败。
PSYoungGen新生代采用Parallel Scavenge收集器
1536K->496K(2048K)GC前该区域已使用容量->GC后该区域已经使用的容量(该区域总容量)
1536K->1072K(7680K)方括号外的数字表示 GC前Java堆已用容量->GC后Java堆容量(Java堆总容量)
0.0031194 secs该内存区域GC所用的时间
Times: user=0.01 sys=0.00, real=0.00 secs用户态消耗的CPU时间,内核态消耗的CPU时间和操作从开始到结束所经历的墙钟时间(Wall Clock Time)
Full GC
[Full GC (Ergonomics) [PSYoungGen: 496K->0K(2048K)] [ParOldGen: 4514K->4908K(5632K)] 5010K->4908K(7680K), [Metaspace: 3567K->3567K(1056768K)], 0.0749053 secs] [Times: user=0.11 sys=0.00, real=0.08 secs]
Full GC完全的垃圾回收
Ergonomics工程
ParOldGen老年代采用Parallel Old收集器
Metaspace元数据空间垃圾回收