我用macbook air测试了java gc,得到了这个gc日志,但是我不知道它是第2行的完全gc还是年轻的gc?
[GC[DefNew: 7139K->146K(9216K), 0.0109670 secs] 7711K->6862K(19456K), 0.0109990 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]
[GC[DefNew: 6377K->6377K(9216K), 0.0000150 secs][Tenured: 6715K->8763K(10240K), 0.0094290 secs] 13093K->12988K(19456K), [Perm : 3441K->3441K(21248K)], 0.0094930 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]
vm选项如下:
-Xms20M -Xmx20M -Xmn10M -XX:+UseSerialGC -XX:+PrintGCDetails
和我的测试源代码:
byte[] b1 = new byte[2 * 1024 * 1024];
byte[] b2 = new byte[2 * 1024 * 1024];
byte[] b3 = new byte[2 * 1024 * 1024];
Thread.sleep(3000);
System.out.println("after sleep 3 sec");
byte[] b4 = new byte[2 * 1024 * 1024];
System.out.println("after b4");
byte[] b5 = new byte[2 * 1024 * 1024];
byte[] b6 = new byte[2 * 1024 * 1024];
System.out.println("after b6");
/**
*
*/
byte[] b7 = new byte[2 * 1024 * 1024];
Thread.sleep(3000);
System.out.println("end");
非常感谢。
修改
我从此link
获取了一些信息