分代模型的六种垃圾回收器
1. Serial收集器(STW: stop-the-world)
这是一个单线程的收集器,适用于客户端模式下的默认新生代收集器。
STW就是卡顿的主要原因。
ParNew收集器 - 是Serial收集器的多线程版本,适用于多核处理器环境下的新生代收集。 Parallel Scavenge收集器 - 这是一个注重吞吐量的新生代收集器,适合于科学计算等后台计算服务类型的应用。 Serial Old收集器 - Serial收集器的老年代版本,也是一个单线程的收集器。 Parallel Old收集器 - Parallel Scavenge收集器的老年代版本,多线程,注重吞吐量。 CMS (Concurrent Mark Sweep) 收集器 - 是一种以获取最短回收停顿时间为目标的老年代收集器,采用并发收集。 G1 (Garbage First) 收集器 - 是一种面向大规模数据处理的垃圾收集器,可以指定最大停顿时间的目标,适用于具有大内存的机器。 ZGC 收集器 - 是一种可扩展的低延迟垃圾收集器,旨在实现低延迟的同时支持更大的堆内存。 Shenandoah GC - 类似于ZGC,也是一种低延迟的垃圾收集器,旨在减少垃圾收集过程中的暂停时间。