我想通过命令了解给定Java进程的-Xloggc值
jinfo -flag loggc 12345,
但会打印:没有这样的标志'loggc'。
命令“ jinfo -flag name”的说明(https://docs.oracle.com/javase/7/docs/technotes/tools/share/jinfo.html)为:
打印给定命令行标志的名称和值。
那么-Xloggc不是命令行标志吗?
答案 0 :(得分:1)
https://docs.oracle.com/javase/7/docs/technotes/tools/share/jinfo.html处的解释不太准确。在最近的JDK(即JDK 8u191和JDK 11.0.1)中,它已更改为
-flag <name> to print the value of the named VM flag
-Xloggc
不是命名的JVM标志,而是一个命令行参数,它转换为多个JVM标志,尤其是-XX:+PrintGC
和-XX:+PrintGCTimeStamps
。
要获取VM命令行,请运行
jcmd 12345 VM.command_line
要查看JVM标志的完整列表,请运行
jcmd 12345 VM.flags -all