HotSpot虚拟机垃圾回收器
HotSpot虚拟机提供有多种垃圾收集器,这些收集器大多适用于不同的分代内存中,并可以互相配合其他收集器使用。G1是目前最新最先进的垃圾收集器,在新生代和老年代都适用。
新生代垃圾收集器
Serial 收集器
serial收集器是HotSpot虚拟机client模式下默认的新生代收集器。采用复制算法,单线程,在执行垃圾收集任务时会中断用户代码的执行,可以和CMS、Serial Old两种老年代收集器配合使用。
ParNew 收集器
ParNew收集器可以看做是serial收集器的多线程版本,在进行垃圾收集时采用多线程任务,但同样需要暂停用户程序,适用于作为运行在server模式下的虚拟机的新生代收集器。
由于使用多线程垃圾收集,线程较多时,线程间的切换,线程创建与销毁同样需要消耗较大的CPU资源,因此应当使用-XX:ParallelGCThreads
参数来限制垃圾收集器的线程数,以达到最佳的性能。
Parallel Scavenge 收集器
Parallel Scavenge收集器也是一个采用复制算法的多线程新生代垃圾收集器,其与ParNe