垃圾收集器参数总结

原创 2013年12月06日 10:50:43

垃圾收集器参数总结

-XX:+<option> 启用选项
-XX:-<option> 不启用选项
-XX:<option>=<number> 
-XX:<option>=<string>

 

参数 描述

-XX:+UseSerialGC

Jvm运行在Client模式下的默认值,打开此开关后,使用Serial + Serial Old的收集器组合进行内存回收 -XX:+UseParNewGC 打开此开关后,使用ParNew + Serial Old的收集器进行垃圾回收 -XX:+UseConcMarkSweepGC 使用ParNew + CMS +  Serial Old的收集器组合进行内存回收,Serial Old作为CMS出现“Concurrent Mode Failure”失败后的后备收集器使用。 -XX:+UseParallelGC Jvm运行在Server模式下的默认值,打开此开关后,使用Parallel Scavenge +  Serial Old的收集器组合进行回收
-XX:+UseParallelOldGC 使用Parallel Scavenge +  Parallel Old的收集器组合进行回收
-XX:SurvivorRatio 新生代中Eden区域与Survivor区域的容量比值,默认为8,代表Eden:Subrvivor = 8:1 -XX:PretenureSizeThreshold 直接晋升到老年代对象的大小,设置这个参数后,大于这个参数的对象将直接在老年代分配 -XX:MaxTenuringThreshold 晋升到老年代的对象年龄,每次Minor GC之后,年龄就加1,当超过这个参数的值时进入老年代 -XX:UseAdaptiveSizePolicy 动态调整java堆中各个区域的大小以及进入老年代的年龄 -XX:+HandlePromotionFailure 是否允许新生代收集担保,进行一次minor gc后, 另一块Survivor空间不足时,将直接会在老年代中保留 -XX:ParallelGCThreads 设置并行GC进行内存回收的线程数 -XX:GCTimeRatio GC时间占总时间的比列,默认值为99,即允许1%的GC时间,仅在使用Parallel Scavenge 收集器时有效 -XX:MaxGCPauseMillis 设置GC的最大停顿时间,在Parallel Scavenge 收集器下有效 -XX:CMSInitiatingOccupancyFraction 设置CMS收集器在老年代空间被使用多少后出发垃圾收集,默认值为68%,仅在CMS收集器时有效,-XX:CMSInitiatingOccupancyFraction=70 -XX:+UseCMSCompactAtFullCollection
由于CMS收集器会产生碎片,此参数设置在垃圾收集器后是否需要一次内存碎片整理过程,仅在CMS收集器时有效 -XX:+CMSFullGCBeforeCompaction
设置CMS收集器在进行若干次垃圾收集后再进行一次内存碎片整理过程,通常与UseCMSCompactAtFullCollection参数一起使用 -XX:+UseFastAccessorMethods
原始类型优化 -XX:+DisableExplicitGC
是否关闭手动System.gc -XX:+CMSParallelRemarkEnabled
降低标记停顿 -XX:LargePageSizeInBytes
内存页的大小不可设置过大,会影响Perm的大小,-XX:LargePageSizeInBytes=128m

 

Client、Server模式默认GC

 

新生代GC方式 老年代和持久GC方式

Client

Serial 串行GC Serial Old 串行GC Server Parallel Scavenge  并行回收GC Parallel Old 并行GC

Sun/oracle JDK GC组合方式

 

新生代GC方式 老年代和持久GC方式

-XX:+UseSerialGC

Serial 串行GC Serial Old 串行GC -XX:+UseParallelGC Parallel Scavenge  并行回收GC Parallel Old 并行GC -XX:+UseConcMarkSweepGC ParNew 并行GC CMS 并发GC
当出现“Concurrent Mode Failure”时
采用Serial Old 串行GC
-XX:+UseParNewGC ParNew 并行GC Serial Old 串行GC -XX:+UseParallelOldGC Parallel Scavenge  并行回收GC Parallel Old 并行GC -XX:+UseConcMarkSweepGC
-XX:+UseParNewGC
Serial 串行GC CMS 并发GC 
当出现“Concurrent Mode Failure”时
采用Serial Old 串行GC

JVM垃圾收集器参数总结

垃圾收集相关的常用参数 参数 描述 UseSerialGC 虚拟机运行在Client模式下的默认值,打开此开关后,使用Serial+Serial Old的收集器组合进行内存回收 Us...

JVM垃圾收集相关常用参数

参  数  描  述  UseSerialGC  虚拟机运行在Client 模式下的默认值,打开此开关后,使用Serial + Serial Old 的收集器组...

理解GC日志以及垃圾收集参数的总结

1、理解以下的GC日志的含义: 2、垃圾收集参数的总结,可以使用以下参数来改变JVM的垃圾收集器:...

JVM垃圾收集器参数总结

下面列出JVM GC时常用的
  • yyywyr
  • yyywyr
  • 2014年09月21日 21:47
  • 1357

JVM垃圾收集器参数总结

垃圾收集相关的常用参数 参数 描述 UseSerialGC 虚拟机运行在Client模式下的默认值,打开此开关后,使用Serial+Serial Old的收集器组合进行内存回收 Us...

理解GC日志

一、日志分析 理解GC日志是处理Java虚拟机内存问题的基本技能,下面我们具体来看看。通过在java命令种加入参数来指定对应的gc类型,打印gc日志信息并输出至文件等策略。1、编写java代码pub...

Java GC之常见垃圾收集器参数总结

上一篇文章简单写了几种常见的垃圾收集器,俗话说,好记性不如烂笔头,今天总结一下这些垃圾收集器的参数总结,供自己和需要的读者将来查阅 -XX:+UseSerialGC : Jvm运行在Client...
  • lc0817
  • lc0817
  • 2017年03月06日 09:34
  • 350

垃圾收集器参数总结

垃圾收集器参数总结

Java虚拟机详解05----垃圾收集器及GC参数

文章来源:http://www.cnblogs.com/smyhvae/p/4748313.html   本文主要内容: 堆的回顾串行收集器并行收集器CMS收集器   ...

JVM 垃圾收集器及GC参数

本文主要内容: 堆的回顾串行收集器并行收集器CMS收集器   零、堆的回顾: 新生代中的98%对象都是“朝生夕死”的,所以并不需要按照1:1的比例来划分内存空间,而是将内存分为一块比较大的Ed...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:垃圾收集器参数总结
举报原因:
原因补充:

(最多只允许输入30个字)