https://blog.csdn.net/qq_21383435/article/details/106311542
首先:CMS和G1都使用了三色标记法
关于垃圾回收算法,基本就是那么几种:标记-清除、标记-复制、标记-整理。在此基础上可以增加分代(新生代/老年代),每代采取不同的回收算法,以提高整体的分配和回收效率。
无论使用哪种算法,标记总是必要的一步。这是理算当然的,你不先找到垃圾,怎么进行回收?
垃圾回收器的工作流程大体如下:能标记的都是可用的,未标记的都是垃圾
标记出哪些对象是存活的,哪些是垃圾(可回收);
进行回收(清除/复制/整理),如果有移动过对象(复制/整理),还需要更新引用。
本文着重来看下标记的部分。