更多内容:
JVM参数类型
JVM参数类型主要有三种,分别为1,标准参数 2,X参数 3,XX参数
标准参数(在各个版本不变的)
我们常见的参数类型有-help -server -client -version。。。。
例如:
[root@qinbao ~]# java -version
java version "1.8.0_25"
Java(TM) SE Runtime Environment (build 1.8.0_25-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)
X参数
-Xint:解释执行
-Xcomp:第一次使用就编译成本地代码
-Xmixed:混合模型,JVM自己来决定是否编译成本地代码
XX参数,主要用来调优
Boolean类型
格式:-XX:[+-]<name>表示启用或者禁用name属性
比如:-XX:+UserConcMarkSweepGC
-XX:+UseG1GC
非Boolean类型
格式:-XX:<name>=<value>表示name属性的值是value
比如:-XX:MaxGCPauseMillis=500 (最大GC暂停时间为500毫秒)
-XX:GCTimeRatio=19
-Xmx -Xms 不是X参数,而是XX参数
-Xms等价于-XX:InitialHeapSize(初始化堆大小)
-Xmx等价于-XXMaxHeapSize(最大堆大小)
我们在查看信息的时候也可以看到参数是属于哪种参数,例如下面的
查看当前java进程的最大堆栈大小(Xms)(b) # jinfo -flag MaxHeapSize 9770
查看当前java进程的每个线程的大小(Xss)(b)# jinfo -flag ThreadStackSize 9770
[root@qinbao ~]# ps -ef|grep java
root 3696 2354 0 00:04 pts/0 00:00:00 grep --color=auto java
root 9770 1 0 Sep25 ? 00:48:37 java -jar bmsBoot-1.0.jar --spring.profiles.active=pro
[root@qinbao ~]# jinfo -flag MaxHeapSize 9770
-XX:MaxHeapSize=994050048
[root@qinbao ~]# jinfo -flag ThreadStackSize 9770
-XX:ThreadStackSize=1024
[root@qinbao ~]#