JVM参数查询

JVM参数分为三大类

1.标准参数查询

java -?

2.非标准参数查询

java -X

3.非stable参数查询

#输出参数初始值(jdk默认值)
java -XX:+PrintFlagsInitial

或者

#输出参数最终值(根据物理环境和用户配置最终采用的值)
java -XX:+PrintFlagsFinal -version

输出结果(只摘取部分数据)

     intx SyncFlags                                 = 0                                   {product}
    ccstr SyncKnobs                                 =                                     {product}
     intx SyncVerbose                               = 0                                   {product}
    uintx TLABAllocationWeight                      = 35                                  {product}
    uintx TLABRefillWasteFraction                   = 64                                  {product}
    uintx TLABSize                                  = 0                                   {product}
     bool TLABStats                                 = true                                {product}
    uintx TLABWasteIncrement                        = 4                                   {product}
    uintx TLABWasteTargetPercent                    = 1                                   {product}
    uintx TargetPLABWastePct                        = 10                                  {product}

数据根据数值类型非为五类

en cn 使用示例
bool 布尔 -XX:+PrintGC
-XX:-UseTLAB
-XX:+UseLargePages
intx 有符号数值
uintx 无符号数值 -XX:SurvivorRatio=8
-XX:LargePageSizeInBytes=4m
ccstr 字符串 -XX:HeapDumpPath=./java_pid.hprof
ccstrlist 多个字符串 -XX:OnOutOfMemoryError="cmd args;cmd args”

程序运行起来后可以通过jinfo 查看和修改(部分参数支持动态修改)

可以用来查看正在运行的Java应用程序的扩展参数,甚至支持在运行时,修改部分参数
-flag <name> pid:打印指定JVM的参数值 
-flag [+|-]<name> pid:设置指定JVM参数的布尔值
-flag <name>=<value> pid:设置指定JVM参数的值

具体可参考链接

猜你喜欢

转载自blog.csdn.net/qingguang686/article/details/112386009