整个过程分为四个步骤: 初始标记 :暂停所有的其他线程,并记录下直接与root相连的对象,速度很快; 并发标记 :同时开启GC和用户线程,用一个闭包结构去记录可达对象。但在这个阶段结束,这个闭包结构并不能保证包含当前所有的可达对象。因为用户线程可能会不断的更新引用域,所以GC线程无法保证可达性分析的实时性。所以这个算法里会跟踪记录这些发生引用更新的地方。
查看更多>>