标准参数
在各个JVM中都不会变;
-help
-server -client
-version -showversion
-cp -classpath
X参数
在各个JVM版本中有可能会变,但这部分变化的比较小,用的不是很多;
-Xint : 完全解释执行
-Xcomp : 第一次使用就完全编译成本地代码
-Xmixed : 混合模式,JVM自己来决定是否编译成本地代码
示例
- java -version
PS C:\Users\LiXinlei> java -version
java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b15, mixed mode)
PS C:\Users\LiXinlei>
- java -Xint -version
PS C:\Users\LiXinlei> java -Xint -version
java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b15, interpreted mode)
- java -Xcomp -version
PS C:\Users\LiXinlei> java -Xcomp -version
java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b15, compiled mode)
XX参数
非标准化参数;
相对不稳定;
主要用于JVM调优和Debug;
Boolean类型
格式:
-XX:[+-]<name> 表示启用或者禁用name属性;
比如:
-XX:+UseConcMarkSweepGC
-XX:+UseG1GC
非Boolean类型
格式:
-XX:<name>=<value> 表示name属性的值是value;
比如:
-XX:MaxGCPauseMills=500
-XX:GCTimeRatio=19
特例:
-Xms 等价于 -XX:InitialHeapSize
-Xmx 等价于 -XX:MaxHeapSize
-Xss 等价于 -XX:ThreadStackSize