java JVM参数类型
1.标准参数
-help
-server -client
-version -showversion
-cp -classpath
2.X参数(默认使用Xmixed,不常用)
非标准化参数(在各个JDK版本中可能会变,但是变动比较小)
-Xint : 解释执行
-Xcomp:第一次使用就编译成本地代码
-Xmixed:混合模式,JVM选择性编译成本地代码
3.XX参数
(1).非标准化参数
(2).相对不稳定,(版本变化)
(3).主要用于JVM调优和debug
XX参数分类
Boolean 类型
-XX:[+-]<name> 表示启用或者禁用name属性。
比如-XX+UseConcMarkSweepGc(启用CMS垃圾回收期),-XX:-UseG1Gc(禁用GE垃圾收集器) ([+] 号代表启用,[-]代表禁用)、
非Boolean类型(K-V类型)
-XX:<name>=<value>表示name属性的值是value
比如 -XX:MaxGcPauseMillis=500(GC最大停顿时间500) , -XX:GCTimeRatio=19(允许的最大GC时间)
-Xmx -Xms(不是X参数,而是XX参数)
-Xms 等价于 -XX:InitialHeapSize 初始化的堆大小
-Xmx 等价于 -XX:MaxHeapSize 最大化的堆大小
jinfo -flag MaxHeapSize <进程编号> -XX:MaxHeapSize=994050048 运行时最大的堆大小
jinfo -flag ThreadStackSize <进程编号> -XX:ThreadStackSize=2048K 启动一个线程需要的内存大小