Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 这些GC日志是什么意思?_Java_Garbage Collection - Fatal编程技术网

Java 这些GC日志是什么意思?

Java 这些GC日志是什么意思?,java,garbage-collection,Java,Garbage Collection,我刚刚得到了关于使用GC调优来提高性能的信息 我正在尝试打印GC日志,如下所示,Test是我的类文件 java-Xms2m-Xmx64m-XX:+PrintGCDetails测试 和 java-Xms2m-Xmx64m-XX:+UseSerialGC-XX:+PrintGCDetails测试 每次我得到以下格式的GC日志 Heap def new generation total 1152K, used 347K [0x00000000f6e00000, 0x00000000f6f4000

我刚刚得到了关于使用GC调优来提高性能的信息

我正在尝试打印GC日志,如下所示,Test是我的类文件

java-Xms2m-Xmx64m-XX:+PrintGCDetails测试 和 java-Xms2m-Xmx64m-XX:+UseSerialGC-XX:+PrintGCDetails测试

每次我得到以下格式的GC日志

Heap
 def new generation   total 1152K, used 347K [0x00000000f6e00000, 0x00000000f6f40000, 0x00000000f8350000)
  eden space 1024K,  33% used [0x00000000f6e00000, 0x00000000f6e56f68, 0x00000000f6f00000)
  from space 128K,   0% used [0x00000000f6f00000, 0x00000000f6f00000, 0x00000000f6f20000)
  to   space 128K,   0% used [0x00000000f6f20000, 0x00000000f6f20000, 0x00000000f6f40000)
 tenured generation   total 768K, used 0K [0x00000000f8350000, 0x00000000f8410000, 0x00000000fae00000)
   the space 768K,   0% used [0x00000000f8350000, 0x00000000f8350000, 0x00000000f8350200, 0x00000000f8410000)
 compacting perm gen  total 21248K, used 2345K [0x00000000fae00000, 0x00000000fc2c0000, 0x0000000100000000)
   the space 21248K,  11% used [0x00000000fae00000, 0x00000000fb04a620, 0x00000000fb04a800, 0x00000000fc2c0000)
No shared spaces configured.
我还尝试使用-XX:+PrintGCTimeStamps vm参数,但它打印相同的输出

从现在起,我已经在谷歌上尝试理解这些日志了

谷歌解释的格式是

8109.128: [GC [PSYoungGen: 109884K->14201K(139904K)] 691015K->595332K(1119040K), 0.0454530 secs]
我能理解

问题 1如何以我后面提到的格式打印GC日志。 有人能解释一下我得到的日志吗?

是的。。。。 我自己弄的

我错误地认为GC正在发生,但并没有发生,所以它向我展示了不同时代使用的空间

当我运行一个测试应用程序时,我的应用程序足够小,不会导致GC。 我在代码中插入了System.gc以满足某些条件,并获得了预期的gc日志

[GC 645K->288K(121344K), 0.0042354 secs]
[Full GC 288K->238K(121344K), 0.0219605 secs]

这些日志在我看来非常清晰,也比你发布的1行代码片段更清晰、更详细。你不明白其中哪一部分?你想找出什么是你不能找到的?我无法理解GC前后的内存大小,即使在提供-XX:+PrintGCTimeStamps@Gagravarr你能帮忙吗?