RSS
菜单

Go 三色标记法详解:并发标记如何保证不漏标不错标

三色标记:所有对象初始为白色;从根对象开始标记为灰色;循环:从灰色队列取对象,将其引用的对象标记为灰色、自身标记为黑色,直到灰色队列为空;最后白色对象为不可达,可回收。并发标记的问题:标记期间用户代码可能修改引用关系(黑色对象指向白色对象),导致漏标(误回收)。解决:写屏障——并发标记时,黑色对象写入白色指针会记录/置灰该对象(Go 用混合写屏障),保证标记正确性。

下载推广海报

圈内讨论推广海报

《Go 三色标记法详解:并发标记如何保证不漏标不错标》完整推广海报
一起交流

全部回复 0

分享经验,让问题更进一步

讨论,从你的观点开始

还没有回复,欢迎补充经验或分享不同的思路。