JVM常用参数(考试常见)

Xms

-Xms 20M表示设置JVM启动内存的最小值为20M,必须以M为单位

Xmx

-Xmx 20M表示设置JVM启动内存的最大值 为20M,必须以M为单位. 将-Xms和-Xmx的大小设置为一样可以避免内存自动扩展.

Xmn

-Xmn 20M表示设置年轻代的大小为20M

verbose

-verbose:gc表示输出虚拟机中GC的详细情况.

Xss

-Xss 128K 表示可以设置虚拟机栈的大小为128K

Xoss

-Xoss 128K 表示本地方法栈的大小为128K.不过Hotspot并不区分虚拟机栈和本地方法栈,因此对于HotSpot虚拟机而言这个参数是无效的.

Xnoclassgc

-Xnoclassgc 表示关闭JVM对类的垃圾回收.

XX系列

PermSize

-XX:PermSize=10M 表示JVM初始化分配的永久代的容量,必须以M为单位.

MaxPermSize

-XX:MaxPermSize=10M 表示JVM允许分配的永久代的最大容量,必须以M为单位,大部分情况下这个参数默认为64M.

TraceClassLoading

-XX:+TraceClassLoading 表示查看类的加载信息.

TraceClassUnLoading

-XX:+TraceClassUnLoading表示查看类的卸载信息

NewRatio

-XX:NewRatio=4 表示设置 年轻代:老年代 的大小比例为1:4,这意味着年轻代占整个堆的1/5;

SurvivorRatio

-XX:SurvivorRatio=8 表示设置 两个Survivor区:1个Eden区 的大小比例为2:8,这意味着Survivor区占整个年轻代的1/5.参数默认为8.

HeapDumpOnOutOfMemoryError

-XX:+HeapDumpOnOutOfMemoryError表示可以让虚拟机在出现内存溢出异常时Dump出当前的堆内存转储快照.

UseG1GC

-XX:+UseG1GC 表示让JVM使用G1垃圾收集器.

PrintGCDetails

-XX:+PrintGCDetails 表示在控制台上打印出GC具体细节

PrintGC

-XX:+PrintGC 表示在控制台上打印出GC信息.

PretenureSizeThreshold

-XX:PretenureSizeThreshold=3145728 表示对象大于3145728(3M)时直接进入老年代分配,这里只能以字节作为单位

MaxTenuringThreshold

-XX:MaxTenuringThreshold=1 表示对象年龄大于1,自动进入老年代

CompileThreshold

-XX:CompileThreshold=1000 表示一个方法被调用1000次之后,会被认为是热点代码,并触发即时编译

PrintHeapAtGC

-XX:+PrintHeapAtGC 表示可以看到每次GC前后堆内存布局

PrintTLAB

-XX:+PrintTLAB 表示可以看到TLAB的使用情况

UseSpining

-XX:+UseSpining 表示开启自旋锁

PreBlockSpin

-XX:PreBlockSpin 更改自旋锁的自旋次数,使用这个参数必须先开启自旋锁

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值