Serial Old垃圾收集器

老年代垃圾收集器,与Serial一样,是一个单线程垃圾收集器,不同的是用的算法不一样(标记-整顿)

依据老年代的特点,有人设计了标记-整顿(Mark Compact)算法,标记过程和标记-革除算法一样,然而后续步骤不是间接对可回收对象进行清理,而是让存活对象向一端挪动,而后革除掉边界以外的内存,如下图所示。

复制算法在对象存活比拟高的老年代须要复制大量的对象,效率将会贬斥,如果不想节约50%的内存,就须要有额定的空间进行调配担保,以应答对象100%都存活的极其状况,所以老年代并不实用复制算法

复制收集算法在对象存活率较高时就要进行较多的复制操作,效率将会变低。更要害的是,如果不想节约50%的空间,就须要有额定的空间进行调配担保,以应答被应用的内存中所有对象都100%存活的极其状况,所以在老年代个别不能间接选用这种算法。

Parallel Old

老年代收集器,是Parallel Scavenge老年代版本,用的算法是标记-整顿,在JDK1.6提供,多线程收集