JVM在Java应用程序优化中是不可缺少的一项,如何合理配置Java参数,如何验证配置参数的有效性,从GC日志中可以获得很重要的提示,今天华清Java学院就为大家分享下Eclipse如何打印GC日志。
如下为测试代码:
public class ReferenceCountingGC {
public Object instance = null;
private static final int _1MB = 1024*1024;
private byte[] bigSize = new byte[2 * _1MB];
public static void testGC(){
ReferenceCountingGC obja =new ReferenceCountingGC();
ReferenceCountingGC objb = new ReferenceCountingGC();
obja.instance =objb;
objb.instance =obja;
obja = null;
objb = null;
System.gc();
}
public static void main(String[] args) {
testGC();}}
第一步:右键项目或文件——Debug As——Debug Configurations
第二步:双击Java Application——VM arguments中填写-verbose:gc——Debug。如下图:
控制台输出GC日志及分析
[GC 5396K->568K(124416K), 0.0034110 secs]
[Full GC 568K->472K(124416K), 0.0069853 secs]
[GC 5396K(年轻代垃圾回收前的大小)->568K(年轻代垃圾回收以后的大小)(124416K)(年轻代的总大小), 0.0034110 secs(回收时间)]
其他GC展现形式
-verbose:gc (开启打印垃圾回收日志)
-Xloggc:D:testgc.log (设置垃圾回收日志打印的文件,文件名称可以自定义)
-XX:+PrintGCTimeStamps (打印垃圾回收时间信息时的时间格式)
-XX:+PrintGCDetails (打印垃圾回收详情)
热点新闻