GC日志解读

GC日志根据不同的JDK有不同的日志格式,但是总得来说都是为了反馈GC前的内存使用量和GC后的内存使用量,GC所耗时的时间等,例如解读如下GC日志中的一部分,表示了普通GC和完全GC两次内存垃圾回收信息:

普通GC日志:

26.701:[GC 26.702:[DefNew:9073k->488k(9088k),0.0026632secs]29892k->21886k(130112k),0.0027223secs][Times:user=0.00 sys=0.00,real=0.00secs]

其中DefNew:9073k->448k(9088k) 代表年轻代从9073k回收至488k,回收了8585k的内存,而JVM分配的年轻代内存总大小是9088k,而29892k->21886k(130112k),0.0027223secs]代表总内存从29892回收至21886k,而当前JVM分配的堆内存总大小是130112k,回收耗时0.0027223秒。

完全GC日志:

26.723:[Full GC 26.723:[Tenured:21398k->21698k(121024k),0.1210303secs]24765->21698k(130112k),[Perm:53247k->53247k],0.1310977secs][Times:user=0.14 sys=0.00,real=0.14secs]

其中Full GC代表是完全GC,Tenured:21398k->21698k(121024k)代表年老代内存的回收情况,Perm代表永久区的回收情况。

由于普通GC只回收部分垃圾对象,因此回收完毕后,系统中仍然存在大量的垃圾对象,而完全GC是系统彻底的对垃圾对象进行回收,回收完毕后,垃圾对象所占用的内存得到彻底的回收。此时JAVA内存真是反映了JAVA对象所占用的内存的大小,因此在做内存泄露的分析时,我们只需要分析FULL GC日志即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值