一、标准参数
不会随着java版本更新而改变
- -version
- -help
- -server
- -cp
二、-X参数
非标准参数,可能在不同的java版本会改变
- -Xint 解释执行
- -Xcomp 第一次使用就编译成本地代码
- -Xmixed 混合模式,JVM自己来决定
三、-XX参数
使用最多的参数,相对不稳定,用于JVM调优和debug使用
boolean类型
格式:-XX:[±] <name> :+或-表示启用或者禁用name属性
比如:
- -XX:+UseConcMarkSweepGC 表示启用CMS类型的垃圾回收器
- -XX:+UseG1GC 表示启用G1类型的垃圾回收器
非boolean类型
格式:-XX<name>=<value>表示name属性的值是value
比如:-XX:MaxGCPauseMillis=500
其他类型
- -XX:Xms=100 简写成 -XX:Xms100
- -Xms1000M等价于-XX:InitialHeapSize=1000M
- -Xmx1000M等价于-XX:MaxHeapSize=1000M
- -Xss100等价于-XX:ThreadStackSize=100
查看参数
java -XX:PrintFlagsFinal -version 打印参数
- 打印出来的参数如果有“=”表示默认值
- 如果有“:=”表示被修改过的,假设你没有修改,但是它还是有这个符号,不必惊讶,JVM根据环境自适应修改这个值
四、常用参数
根据自己的需要,自行优快云搜索