JVM的参数类型
1. 标准参数
* -help
* -server , -client
* -version . -showversion
* -cp , -classpath
2. X参数
* 非标准化参数(在各个JDK版本中可能会变,但是变动比较小)
* -Xint : 解释执行
![11464886-ce28c772027fcec1.png](https://i-blog.csdnimg.cn/blog_migrate/594324e493aacaf614ac21036b7cba04.png)
-
-Xcomp : 编译执行 第一次使用就编译成本地代码
-
-Xmixed :混合模式,JVM自己来决定是否编译成本地代码
3. XX参数
- 非标转化参数
- 相对不稳定
- 主要用于JVM调优和Debug
- 参数分类
Boolean类型 格式:-XX:[+-]<name> 表示启用或者禁用name属性。比如-XX+UseConcMarkSweepGc , -XX:+UseG1Gc ([+]号代表启用,[-]代表禁用)
非Boolean类型 格式:-XX:<name>=<value>表示name属性的值是value.比如 -XX:MaxGcPauseMillis=500 , -XX:GCTimeRatio=19
-Xmx -Xms
1. 不是X参数,而是XX参数
2. -Xms 等价于 -XX:InitialHeapSize 初始化的堆大小
3. -Xmx 等价于 -XX:MaxHeapSize 最大化的堆大小
4. jinfo -flag MaxHeapSize <进程编号> -XX:MaxHeapSize=994050048 运行时最大的堆大小
5. jinfo -flag ThreadStackSize <进程编号> -XX:ThreadStackSize=1024K 启动一个线程需要的内存大小