JVM参数类型及如何查看默认参数

闲言少叙,时间紧迫。


JVM的参数类型:

1、标配参数 -version、-help、java -showversion 等

在这里插入图片描述

2、X参数(了解)

在这里插入图片描述

3、XX参数

(1)- Boolean类型

公式: -XX:+ 或者 - 某个属性值
+表示开启
-表示关闭
先来学习一下如果查看一个正在运行中的java程序,查看他的某个jvm参数是否开启?具体值是多少?
jps -l
jinfo -flag 某个属性 进程编号
以查看是否开启打印GC日志为例
在这里插入图片描述
可以看到 -PrintGCDetails 表示此时并未开启打印GC日志
现在我们将其开启。
在这里插入图片描述
再来看一遍
在这里插入图片描述
了解?yes~
再提一点,是否串行垃圾回收器
-XX:-UseSerialGC、-XX:+UseSerialGC

(2)-KV设值类型

公式:-XX:(属性) key=(属性值) value
先以MetaspaceSize 为例:
先查看元空间大小为默认为多少
第一步依旧是先查出进程编号
jps -l
第二步:
在这里插入图片描述
然后我们再来重新设值
在这里插入图片描述
在这里插入图片描述
再以MaxTenuringThreshold(young区的对象活过多少次之后才能进入老年区)为例
还是先来看看默认值
在这里插入图片描述
可以看到默认值为15
步骤跟上面一样,就不演示了。

如何来查看当前运行程序的配置信息

上面其实已经用到了
1、jinfo -flag 属性 进程编号
2、jinfo -flags 进程编号
为了这个演示费了九牛二虎之力。
查阅之后发现应该是jdk版本的问题,所以下载配置了jdk12之后,重启idea,成功运行。
在这里插入图片描述

坑题

-Xms 和 -Xmx 属于哪种类型?
在这里插入图片描述
只是因为这个常用,所以为了便捷使用这样写。即这两个参数属于-XX

JVM盘点查看默认参数

1、查看初始默认(只截取了一小部分)

java -XX:+PrintFlagsInitial
在这里插入图片描述

2、主要查看修改更新

java -XX:+PrintFlagsFinal -version
大致相同于java -XX:+PrintFlagsInitial
在这里插入图片描述
这一点我们需要注意;
:=和: 有什么区别呢?
无: 就是没有被改过的初始值
如果有:是jvm加载时或者人为修改过。

在这里插入图片描述
这样能在启动程序中修改值,能够很好的看出:=和=的区别
在这里插入图片描述
自己来搞一遍
在这里插入图片描述
来试试修改一个MetaspaceSize在这里插入图片描述
java -XX:+PrintFlagsFinal -XX:MetaspaceSize=512m Main
在这里插入图片描述
看到了吗,从 = 变为 :=

好,继续。
3、接下来看如何打印命令行参数
java -XX:+PrintCommandLineFlags -version
在这里插入图片描述
可以看出java8 默认的垃圾回收器 是并行gc。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值