1、前文回顾

    昨天给出示例代码,设置jvm参数,触发YoungGC,今天仔细分析GC日志,图解Young GC的执行过程

2、程序运行采用的默认JVM参数如何查看?

怎么看系统用的默认JVM参数?

    给你的JVM加 -Xloggc:d:/gc.log 参数,就可以在这里看到他默认会给你的JVM进程分配多大的内存空间了。默认给的内存是很小的    

3、一次GC的概要说明

见4

4、图解GC执行过程

0.268: [GC (Allocation Failure) 0.269: [ParNew: 4030K->512K(4608K), 0.0015734 secs]
4030K->574K(9728K), 0.0017518 secs]
[Times: user=0.00 sys=0.00, real=0.00 secs]

Young GC前:

044、JVM实战总结:高级工程师的硬核技能:JVM的Young GC日志应该怎么看?_JVM

Young GC 后:

 

044、JVM实战总结:高级工程师的硬核技能:JVM的Young GC日志应该怎么看?_sed_02

缩略图:

044、JVM实战总结:高级工程师的硬核技能:JVM的Young GC日志应该怎么看?_执行过程_03

5、GC过后的堆内存使用情况

par new generation   total 4608K, used 2601K 
eden space 4096K, 51% used
from space 512K, 100% used
to space 512K, 0% used

044、JVM实战总结:高级工程师的硬核技能:JVM的Young GC日志应该怎么看?_sed_04