JVM 命令:-Xms5m -Xmx20m -XX:+PrintGCDetails -XX:+PrintCommandLineFlags -XX:+UseSerialGC
[GC (Allocation Failure) [DefNew: 1056K->5K(1856K), 0.0008460 secs][Tenured: 4728K->4733K(5124K), 0.0019800 secs] 4760K->4733K(6980K), [Metaspace: 3118K->3118K(1056768K)], 0.0029335 secs] [Times: user=0.00 sys=0.00, real=0.00 secs] Heap def new generation total 6144K, used 5445K [0x00000000fec00000, 0x00000000ff2a0000, 0x00000000ff2a0000) eden space 5504K, 98% used [0x00000000fec00000, 0x00000000ff151408, 0x00000000ff160000) from space 640K, 0% used [0x00000000ff160000, 0x00000000ff160000, 0x00000000ff200000) to space 640K, 0% used [0x00000000ff200000, 0x00000000ff200000, 0x00000000ff2a0000) tenured generation total 13696K, used 10883K [0x00000000ff2a0000, 0x0000000100000000, 0x0000000100000000) the space 13696K, 79% used [0x00000000ff2a0000, 0x00000000ffd40cb8, 0x00000000ffd40e00, 0x0000000100000000) Metaspace used 3203K, capacity 4496K, committed 4864K, reserved 1056768K class space used 345K, capacity 388K, committed 512K, reserved 1048576K
[DefNew、[Tenured 表示GC发生的区域 ,新生代和老年代。
1056K->5K(10856K):表示GC前该内存区域已使用容量->GC后该区域已使用容量(该内存区域总容量)。
4760K->4733K(9680K):表示GC前java堆已使用容量->GC后java堆已使用容量(java堆总容量)
0.0029335 secs:表示该内存区域GC所占用的时间,单位是秒。
[Times: user=0.00 sys=0.00, real=0.00 secs] :表示用户态消耗的CPU时间,内核态消耗的CPU事件,操作从开始到结束所经过的各种时间(包括各种非运算的等待耗时)。
tenured generation total 13696K, used 10883K:老年代 总共容量13696K 已使用容量10883K
the space 13696K, 79% used:表示老年代总共容量13696K,79%被使用。
Metaspace: Java8中,永久代已经被移除,被一个称为“元数据区”(元空间)的区域所取代。