一、介绍
jinfo(Configuration Info for Java)的作用是实时查看和调整虚拟机各项参数。
使用jps命令的-v参 数可以查看虚拟机启动时显式指定的参数列表,但如果想知道未被显式指定的参数的系统默认值,除了去找资料外,就只能使用jinfo的-flag选项进行查询了(如果只限于JDK 6或以上版本的话,使用java -XX:+PrintFlagsFinal查看参数默认值也是一个很好的选择)。
jinfo还可以使用-sysprops选项把虚拟机 进程的System.getProperties()的内容打印出来。这个命令在JDK 5时期已经随着Linux版的JDK发布,当 时只提供了信息查询的功能,JDK 6之后,jinfo在Windows和Linux平台都有提供,并且加入了在运行期 修改部分参数值的能力(可以使用-flag[+|-]name或者-flag name=value在运行期修改一部分运行期可写的 虚拟机参数值)。
在JDK 6中,jinfo对于Windows平台功能仍然有较大限制,只提供了最基本的-flag选项。
二、jinfo命令格式
jinfo [ option ] pid
三、option
where <option> is one of:
-flag <name> 打印指定VM参数的值
-flag [+|-]<name> 启用或禁用指定VM的参数
-flag <name>=<value> 将VM的指定的参数名设置为给定值
-flags 打印指定VM的参数
-sysprops 获取指定VM的系统参数相当于代码System.getProperties()
<no option> 默认打印上面两个
-h | -help 打印帮助信息
四、执行样例
查询CMSInitiatingOccupancyFraction参数值
jinfo -flag CMSInitiatingOccupancyFraction 1444
之后将打印想要查询的参数值,例如打印:-XX:CMSInitiatingOccupancyFraction=85
五、增加JVM打印详细GC日志参数
jinfo –flag -或+[参数] 可以增加参数,但是仅限于由java -XX:+PrintFlagsFinal –version查询出来且为manageable的参数
查看PrintGCDetails参数是否开启
C:\Users\hacry>jinfo -flag PrintGCDetails 33616
-XX:-PrintGCDetails
增加PrintGCDetails打印详细GC参数
C:\Users\hacry>jinfo -flag +PrintGCDetails 33616
再次查看
C:\Users\hacry>jinfo -flag PrintGCDetails 33616
-XX:+PrintGCDetails
到此这篇关于详解java jinfo命令的文章就介绍到这了,更多相关java jinfo内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!