一:串行收集器:(Serial收集器)
该收集器最古老、稳定简单是一个单线程的收集器,(stop-the-world)可能会产生长时间的停顿. serial 收集器一定不能用于服务器端。这个收集器类型仅应用于单核CPU桌面电脑。
新生代和老年代都会使用serial收集器。新生代使用复制算法(内存分三块的那个复制算法)。老年代使用标记-整理算法。
二:并行收集器:(Parallel收集器)
parallel收集器使用多线程并行处理GC,因此更快。当有足够大的内存和大量芯数时,parallel收集器是有用的。它也被称为“吞吐量优先垃圾收集器。”
三:并行收集器:(Parallel Old 垃圾收集器)
相比于parallel收集器,他们的唯一区别就是在老年代所执行的GC算法的不同。它执行三个步骤:标记-汇总-压缩(mark – summary – compaction)。汇总步骤与清理的不同之处在于,其将依然幸存的对象分发到GC预先处理好的不同区域,算法相对清理来说略微复杂一点。
四:并行收集器:(CMS收集器)
(ConcurrentMark Sweep:并发标记清除)是一种以获取最短回收停顿时间为目标的收集器。适合应用在互联网站或者B/S系统的服务器上,这类应用尤其重视服务器的响应速度,希望系统停顿时间最短。
五:G1收集器
这个类型的垃圾收集算法是为了替代CMS 收集器而被创建的,因为CMS 收集器在长时间持续运行时会产生很多问题。