串行收集器并发
并行收集器.net
···线程
···3d
cms收集器code
并发与并行blog
GC参数整理内存
-XX:+UseSerialGC:在新生代和老年代使用串行收集器 -XX:SurvivorRatio:设置eden区大小和survivior区大小的比例 -XX:NewRatio:新生代和老年代的比 -XX:+UseParNewGC:在新生代使用并行收集器 -XX:+UseParallelGC :新生代使用并行回收收集器 -XX:+UseParallelOldGC:老年代使用并行回收收集器 -XX:ParallelGCThreads:设置用于垃圾回收的线程数 -XX:+UseConcMarkSweepGC:新生代使用并行收集器,老年代使用CMS+串行收集器 -XX:ParallelCMSThreads:设定CMS的线程数量 -XX:CMSInitiatingOccupancyFraction:设置CMS收集器在老年代空间被使用多少后触发 -XX:+UseCMSCompactAtFullCollection:设置CMS收集器在完成垃圾收集后是否要进行一次内存碎片的整理 -XX:CMSFullGCsBeforeCompaction:设定进行多少次CMS垃圾回收后,进行一次内存压缩 -XX:+CMSClassUnloadingEnabled:容许对类元数据进行回收 -XX:CMSInitiatingPermOccupancyFraction:当永久区占用率达到这一百分比时,启动CMS回收 -XX:UseCMSInitiatingOccupancyOnly:表示只在到达阀值的时候,才进行CMS回收
总结:get
cms相对来讲有如下特色: 一、能保证系统的响应时间,减小垃圾收集时的停顿时间,对一些作监控的应用优其重要。 二、Cms采用Mark-Sweep会对堆产生空间碎片,可是能够指定在通过几回垃圾回收后再作总的空间整理 三、虽然fgc回收时间相对比并行收集器少,但总的回收次数确是多的,因此会致使系统停顿次数变多,致使吞吐量降低。