JDK诞生 Serial追随 提高效率,诞生了Parallel Scavenge,为了配合CMS,诞生了ParNew,CMS是1.4版本后期引入,CMS是里程碑式的GC,它开启了并发回收的过程,但是CMS毛病较多,因此目前没有任何一个JDK版本默认是CMS。
并发垃圾回收是因为无法忍受STW
1. Serial & Serial Old
Serial & Serial Old分别是新生代和老年代的垃圾回收器,串行回收,现在一般不用了。
Serial
a stop-the-world(STW),copying collector which uses a single GC thread.
单CPU效率最高 虚拟机是Client模式的默认垃圾回收器。
单线程的,当进行垃圾回收时会禁止其它一切操作(STW),它不是立刻停止,会找到一个safe point,一个安全点禁止。
由于Serial收集器进行垃圾回收时的等待时间,即STW时间较长,所以只适合在内存空间较小的情况下使用
Serial Old
a stop-the-world(STW),mark-sweep-compact collector that uses a single GC