文章目录
-
- JVM 的参数类型
-
-
- 标配参数
- x 参数(了解)
- xx 参数
-
-
- ⏳ Boolean 类型
- ⏳ KV 设值类型
- ⏳ jinfo 举例,如何查看当前运行程序的配置
- ⏳ 题外话(坑题)
- 盘点家底查看 JVM 默认值
-
-
- -XX:+PrintFlagsInitial
-
- -XX:+PrintFlagsFinal
-
- PrintFlagsFinal 举例,运行 java 命令的同时打印出参数
-
-
- ⏳ java -XX:+PrintFlagsFinal -Xss128k T(T的运行的 java 类名字)
- -XX:+PrintCommandLineFlags
-
-
- ⏳ 打印命令行参数
- ⏳ Case
JVM 的参数类型
标配参数
- -version
- -help
- java -showversion

在 jdk 各个版本之间稳定,很少有大的变化
x 参数(了解)
- -Xint: 解释执行
- -Xcomp: 第一次使用就编译成本地代码
- -Xmixed: 混合模式

xx 参数
⏳ Boolean 类型
公式:-XX:+ 或者 - 某个属性值(+表示开启 -表示关闭)
Case:
是否打印 GC 收集细节
-XX:-PrintGCDetails

-XX:+PrintGCDetails

是否使用串行垃圾回收器
-XX:-UseSerialGC
-XX:+UseSerialGC
⏳ KV 设值类型
公式:-XX:属性key=属性值value
Case:
-XX:MetaspaceSize=128m
-XX:MaxTenuringThreshold=15
⏳ jinfo 举例,如何查看当前运行程序的配置
公式:jinfo -flag 配置项 进程编号
Case1:

Case2:

Case3:

⏳ 题外话(坑题)
两个经典参数:-Xms 和-Xmx
-Xms:等价于 -XX:InitialHeapSize
-Xmx:等价于 -XX:MaxHeapSize
盘点家底查看 JVM 默认值
-XX:+PrintFlagsInitial
⏳ 主持要查看初始默认
⏳ 公式
java -XX:+PrintFlagsInitial -version
java -XX:+PrintFlagsInitial
⏳ Case

-XX:+PrintFlagsFinal
⏳ 主要查看修改更新
⏳ 公式
java -XX:+PrintFlagsFinal -version
java -XX:+PrintFlagsFinal
⏳ Case

= 表示没有修改,:= 表示人为改过、JVM加载过
PrintFlagsFinal 举例,运行 java 命令的同时打印出参数
⏳ java -XX:+PrintFlagsFinal -Xss128k T(T的运行的 java 类名字)
-XX:+PrintCommandLineFlags
⏳ 打印命令行参数
⏳ Case