其他分享
首页 > 其他分享> > 堆空间的常用参数

堆空间的常用参数

作者:互联网

-XX:printFlagsInitial:查看所有的参数默认初始值
-XX:printFlagsFinal:查看所有参数的最终值(可能会存在修改的值,这里打印的是最终值)
-xms:堆空间的初始值大小,默认为内存的1/64
-xmx:对空间的最大大小,为内存的1/4
-xmn:设置新生代的大小
-XX:NewRatio:设置新生代和老年代的占比,默认为1:2,也就是值为2
-XX:SurvivorRatio:设置新生代Eden和s0/s1的占比,默认为是8:1:1,也就是值为8
-XX:MaxTenuringThreshold: 设置新生代垃圾的最大年龄数
-XX:+PrintGCDetails: 打印详细的gc处理日志
-XX:HandlePromotionFailure: 是否设置空间分配担保

SurvivorRatio参数设置注意点

如果eden设置得太大,s0/s1区太小,则会出现对象都无法放入s0/s1进行年龄计算,而直接进入老年代,直接使得内存分代的意义大大减弱
如果eden设置得太小,由于新生代中的gc都是由eden满时触发的,所以会导致eden容易满而出现频繁gc的情况,影响到了用户进程。

是否设置空间分配担保参数设置的解释

这个参数在jdk1.7后就失效了,因为默认是true。
在进行minor gc的时候,jvm会检查老年代最大可用的连续空间是否大于新生代所有对象的总空间,

标签:常用,full,eden,新生代,XX,gc,设置,空间,参数
来源: https://blog.csdn.net/lyd135364/article/details/121064682