Serial
新生代收集器
复制算法
运行在 Client 模式下
ParNew
Serial 收集器的多线程版本
新生代收集器
多运行在 Server 模式下
可与 CMS 收集器工作配合( Serial 收集器亦可)
Parallel Scavenge
新生代收集器
也使用复制算法
两个参数控制吞吐量:
-XX:MaxGCPauseMillis 控制最大垃圾收集停顿时间 大约0的毫秒数
-XX:GCTimeRatio 设置吞吐量大小 大约0 小于100的整数
开关参数 -XX:+UseAdaptiveSizePolicy
Serial Old
Serial 收集器的老年代版本
使用 "标记-整理" 算法
多用于 Client 模式下
在 Server 模式下的两大用途:
1.在JDK1.5及之前的版本中,与 Parallel Scavenge 收集器搭配使用
2.作为CMS收集器的后备方案,在并发收集发生 Concurrent Mode Failure 时使用
Parallel Old
Parallel Scavenge 收集器的老年代版本
多线程
使用 "标记-整理" 算法
CMS
初始标记
并发标记
重新标记
并发清楚
使用 "标记-清楚" 算法
对 CPU 敏感
无法处理 '浮动垃圾'
会产生大量空间碎片
G1
初始标记
并发标记
最终标记
筛选回收