过程 初始标记 从roots(例如:thread stack引用的对象,static对象),新生代对象,标记直接引用的老年代对象. 并发标记 利用初始标记阶段标记的对象,递归标记整个老年代. 该阶段与用户线程并行执行,产生变化的对象(新建,晋升,引用变化(不引用)等)所在的Card标记为Dirty. 重新标记 使用roots,新生代对象,仅标记老年代中Dirty Card中的对象. 并发清除 清除未标记的对象. 与用户线程并行执行. 调优 ConcurrentMode Failure 并发标记,