首页 » GC » 正文

如何查看线上的Java进程使用的GC收集器类型

使用下面的命令可以查看是否使用了指定类型GC收集器,结果中有+号则使用这种收集器,否则有-号表示没有使用这个收集器。

并行:

jinfo -flag UseParallelGC 13727
jinfo -flag UseParallelOldGC 13727(fallback to 串行)

并发:

jinfo -flag UseParNewGC 13727(fallback to 串行)
jinfo -flag UseConcMarkSweepGC 13727

串行:

jinfo -flag UseSerialGC 13727


显示所有可设置参数及默认值:

可结合-XX:+PrintFlagsInitial与-XX:+PrintFlagsFinal对比设置前、设置后的差异,方便知道对哪些参数做了调整。对于不同的平台会对默认参数进行调整,默认参数可用如下命令获得:

java -XX:+PrintFlagsInitial

启 动后根据环境更改的参数:

可以获取到所有可设置参数及值(手工设置之后的值),这个参数只能使用在Jdk6 update 21以上版本(包括该版本)。-XX:+PrintFlagsFinal参数的使用 与上面-XX:+PrintFlagsInitial 参数使用相同:

java -XX:+PrintFlagsFinal

显示出JVM初始化完毕后所有跟最初的默认值不同的参数及它们的值:

-XX:+PrintCommandLineFlags

打印在命令行设置的参数,只显示在命令行显示的设置的参数,默认的或者final之前调整的不包含在内:

jinfo -flags

打印系统属性:


jinfo -sysprops