JVM学习笔记23-GC相关参数

  • -verbose:gc–输出GC的详细信息

  • -Xms20M --堆初始大小

  • -Xmx20M --堆最大

  • -Xmn10M --新生代大小

  • -XX:+PrintGCDetails --输出gc详情

  • -XX:SurvivorRatio=8 --设置Eden和Survivor空间比例

  • java -XX:+PrintCommandLineFlags -version输出当前jvm的启动参数

  • -XX:+PrintGCDetails—输出GC日志

  • -XX:+PrintGCDateStamps—输入GC日期

  • -XX:+UseConcMarkSweepGC—老年代使用CMS收集器

  • -XX:+UseParNewGC—新生代使用PC收集器

  • -XX:MaxTenuringThreshold=3
    MaxTenuringThreshold的作用:在可以自动调节对象晋升(promote)到老年代的阈值的GC中,设置该阈值的最大值
    该参数的默认值为15,CMS中默认为6,G1中默认为15(JVM中,该数值是由4个bit来标识的,所以最大为1111,即为15)
    经历了多次GC后,存活的对象会在From Survivor和To Survivor间来回存放
    而这里面的一个前提是这两个空间又足够的大小来存放这些数据
    在GC算法中,会计算每个对象的年龄大小,如果达到某个年龄段后发现总大小已经大于了Survivor的空间的50%.
    那么这时候就需要调整阈值,不能再等到默认的15次GC后才完成晋升
    因为这样会导致Survivor空间不足,所以需要调整阈值,让这些存活的对象尽快完成晋升

  • -XX:PretenureSizeThreshold=11111 —放入老年代对象大小的阈值,超过该值直接放入老年代 该参数在Serial收集器中生效

  • -XX:+UseSerialGC—使用Serial收集器 两个搭配才能生效

  • -XX:+PrintTenuringDistribution --打印出各年龄段对象的总体情况

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值