本文共 759 字,大约阅读时间需要 2 分钟。
Serial收集器是新生代的垃圾收集器,是一个单线程的收集器,它开始工作时会暂停掉其它所有的工作线程,一直到它工作结束。它是虚拟机运行在Client模式下的默认新生代垃圾收集器,采用复制算法。
ParNew收集器是新生代的垃圾收集器,采用多线程进行垃圾收集和回收,采用复制算法的收集器,它是Serial收集器的多线程版本,它的实现复用了很多Serial收集器的代码,所以它包含了很多Serial收集器的参数和特性,它能与CMS收集器配合工作。它开始工作的时候会暂停所有用户线程。
Parallel Scavenge收集器是一个新生代收集器,采用复制算法,多条垃圾收集线程并行工作。它与ParNew收集器的区别是它可以通过参数控制吞吐量,因此也被成为吞吐量优先收集器。
Serial Old收集器是一个老年代收集器,它也是一个单线程收集器,使用标记-整理算法。虚拟机运行在Client模式下,Serial Old收集器用于收集和回收老年代。
Parallel Old收集器是一个老年代收集器,它使用多线程进行垃圾收集和回收,使用标记-整理算法。和Parallel Scavenge收集器一样,它也注重吞吐量优先。
CMS收集器是一个老年代收集器,采用标记-清除算法,注重获取最短回收停顿时间,是比较常用的垃圾收集器。它的工作过程包含4个步骤:初始标记、并发标记、重新标记和并发清除,其中初始标记和重新标记需要暂停所有的用户线程。因为它采用标记-清除算法,所以会产生空间碎片。
G1收集器可以用于新生代和老年代,具备用户线程和回收线程的并行与并发等特性。
转载地址:http://gjfgx.baihongyu.com/