Java虚拟机--常用的GC参数(十)

  • 串行回收器相关的参数:
    • -XX:+UseSerialGC:在新生代和老年代使用串行收集器;
    • -XX:SurvivorRatio:设置eden区大小和survivior区大小的比例;
    • -XX:PretenureSizeThreshold:设置大对象直接进入老年代的阈值。当对象的大小超过这个值时,将直接在老年代分配;
    • -XX:MaxTenuringThreshold:设置对象进入老年代的年龄的最大值。每一次MinorGC后,对象年龄就加1。任何大于这个年龄的对象,一定会进入老年代;
  • 与并行GC相关的参数:
    • -XX:+UseParNewGC:在新生代使用并行收集器;
    • -XX:+UseParallelOldGC:老年代使用并行回收收集器;
    • -XX:ParallelGCThreads:设置用于垃圾回收的线程数。通常情况下可以和CPU数量相等,但在CPU数量比较的情况下,设置相对较小的数值也是合理的;
    • -XX:MaxGCPauseMillis:设置最大垃圾收集停顿时间。它的值是一个大于0的整数。收集器在工作时,会调整Java堆大小或者其他一些参数,尽可能地把停顿时间控制在MaxGCPauseMillis以内;
    • -XX:GCTimeRation:设置吞吐量大小。它的值是一个0100之间的整数。假设GCTimeRatio的值为n,那么系统将花费不超过1/1+n)的时间用于垃圾收集;
    • -XX:+UseAdaptiveSizePolicy:打开自适应GC策略。在这种模式下,新生代的大小,edensurvivior的比例,晋升老年代的对象年龄等参数会被自动调整,以达到在堆大小,吞吐量和停顿时间之间的平衡点;
  • CMS回收器相关的参数:
    • -XX:+UseConcMarkSweepGC:新生代使用并行收集器,老年代使用CMS+串行收集器。
    • -XX:+ParallelCMSThreads:设定CMS的线程数量;
    • -XX:CMSInitiatingOccupancyFraction:设置CMS收集器在老年代空间被使用多少后触发,默认为68%
    • -XX:+UseCMSCompactAtFullCollection:设置CMS收集器在完成垃圾收集后是否要进行一次内存碎片的整理;
    • -XX:CMSFullGCsBeforeCompaction:设定进行多少次CMS垃圾回收后,进行一次内存压缩;
    • -XX:+CMSClassUnloadingEnabled:允许对元数据区进行回收;
    • -XX:UseCMSInitiatingPermOccupancyFraction:当永久区占用率达到这一百分比时,启动CMS回收(前提是-XX:+CMSClassUnloadingEnabled激活了);
    • -XX:UseCMSInitiatingOccupancyOnly:表示只在到达阈值的时候才进行CMS回收;
    • -XX:CMSIncrementalMode:使用增量模式,比较适合单CPU。增量模式在JDK8中标记为废弃,并且将在JDK9中彻底移除;
  • G1回收器相关的参数:
    • -XX:+UseG1GC:使用G1回收器;
    • -XX:MaxGCPauseMillis:设置最大垃圾收集停顿时间;
    • -XX:GCPauseIntervalMillis:设置停顿间隔时间;
  • TLAB相关:
    • -XX:+UseTLAB:开启TLAB分配;
    • -XX:+PrintTLAB:打印TLAB相关分配信息;
    • -XX:TLABSize:设置TLAB大小;
    • -XX:+ResizeTLAB:自动调整TLAB大小;
  • 其他参数:
    • -XX:+DisableExplicitGC:禁用显示GC
    • -XX:+ExplicitGCInvokesConcurrent:使用并发方法处理显示GC
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值