idea打印gc信息及其简单概述

根据系统信息选择对应的文件
- IntelliJ IDEA 2017.2.3\bin\idea64.exe.vmoptions
- IntelliJ IDEA 2017.2.3\bin\idea32.exe.vmoptions

在结尾加

-verbose:gc
-XX:+PrintGCDetails
-XX:+PrintGCDateStamps
-Xloggc:gcc.log

参数介绍:

-verbose:gc : 开启gc日志
-XX:+PrintGCDetails : 打印gc详情
-XX:+PrintGCDateStamps : 打印gc时间戳
-Xloggc:gcc.log : 将日志输出到文件xx(默认位置为桌面)

打印信息概述:
环境 Java HotSpot + PraNew + CMS + jdk1.8

其中抽取两种简单概述
2017-12-11T12:46:56.519+0800: 0.708: [GC (Allocation Failure) 2017-12-11T12:46:56.519+0800: 0.709: [ParNew: 34944K->4352K(39296K), 0.0115267 secs] 34944K->5773K(126720K), 0.0118803 secs] [Times: user=0.06 sys=0.00, real=0.01 secs] 

2017-12-11T13:48:14.066+0800: 3678.255: [Full GC (System.gc()) 2017-12-11T13:48:14.066+0800: 3678.255: [CMS: 212212K->119161K(235848K), 0.9176937 secs] 246241K->119161K(275144K), [Metaspace: 218148K->218148K(1249280K)], 0.9198583 secs] [Times: user=0.88 sys=0.02, real=0.92 secs] 


2017-12-11 : 日期

12:46:56.519 : 执行回收时间

0.708 : idea启动jvm到该次垃圾回收的时间(s)

GC/Full GC : 垃圾回收停顿类型 判断是否发生“stop the world”,不能作为是否回收老年代的依据,通常是由于发生担保失败触发或手动调用[gc(system.gc()]

Allocation Failure : 本次垃圾回收的原因,此时为Eden区空间不足

ParNew/CMS/Metaspace : 垃圾回收区域 新生代/老年代/元空间

34944K->4352K(39296K),0.0115267 secs : 清理前占用 -> 清理后占用(新生代总大小),过程耗时【我们普遍认为,新生代包含Eden区Survivor1/Survivor2区,而每次清理将会清空Eden区并将幸存下来的对下给你放到Survivor1/Survivor2区,所以此时清理后的4352K可以理解为是Survivor1/Survivor2区的占用】

34944K->5773K(126720K), 0.0118803 : 整个堆内存清理前占用 ——> 清理后占用(对内存总大小),耗时

你可能感兴趣的:(其他)