串行收集器併發
並行收集器.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回收時間相對比並行收集器少,但總的回收次數確是多的,因此會致使系統停頓次數變多,致使吞吐量降低。