Visual GC 插件
Spaces窗口:
- Metaspace:方法区,如果JDK1.8之前的版本,就是Perm,JDK7和之前的版本都是以永久代(PermGen)来实现方法区的,JDK8之后改用元空间来实现(MetaSpace)。
- Old:老年代
- Eden: 新生代Eden区
- S0和S1:新生代的两个 Survivor 区
Graphs窗口:
该窗口区域包含8个图标,以时间为横坐标动态展示各个指标的运行状态
下面从上往下对上图中的各个图标表及其状态进行说明
-
Compile Time:编译情况
24266 compoles - 39.416s
表示编译总数为24266,编译总耗时为39.416s。
一个脉冲表示一次JIT编译,脉冲越宽表示编译时间越长。 -
Class Loader Time:类加载情况
49052 loaded,39 unloaded - 29.937s
表示已加载的数量为49052,卸载的数量为39,耗时为29.537s。 -
GC Time:总的(包含新生代和老年代)gc情况记录
123 collections,859.203ms Last Cause:Allocation Failure
表示一共经历了123次gc(包含Minor GC和Full GC),总共耗时859.203ms。 -
Eden Space:新生代Eden区内存使用情况
(200.00M,34.125M): 31.52M,109 collections,612.827ms
表示Eden区的最大容量为200M,当前容量为34.125M,当前已使用31.52M,从开始监控到现在在该内存区域一共发生了109次gc(Minor GC),gc总耗时为612.827ms。 -
Survivor 0和Survivor 1:新生代的两个Survivor区内存使用情况
(25.000M,4.250M):1.757M
表示该Survivor区的最大容量为25M(默认为Eden区的1/8),当前已用1.757M。 -
Old Gen:老年代内存使用情况
(500.000M,255.195M):206.660M,14 collections,246.375ms
表示老年区的最大容量为500M,当前容量为255.195M,当前已用206.660M,从开始监控到现在在该内存区域一共发生了14次gc(Full GC),gc总耗时为246.375ms,换算下可以看出单次Full GC要比Minor GC耗时长很多。
-
Metaspace:方法区内存使用情况
(1.053G,278.250M):262.345M
表示方法区最大容量为1.053G,当前容量为278.250M,当前使用量为262.345MM。