聊聊Go的三色标记法( 三 )


最终将白色状态的对象回收掉 。为了解决其中会存在的漏标、多标问题 , 它通过「混合写屏障」的机制来解决 。思路是 , 将对象分为堆上的对象和栈上的对象 。GC 开始将栈上的对象全部扫描并标记为黑色 , 无需 STW 。并且之后不再进行第二次重复扫描在 GC 期间 , 任何在栈上创建的新对象 , 均为黑色 。在 GC 期间 , 在堆上被删除或者添加的对象都标记为灰色 。后续继续扫描 。
希望对你有所帮助 。
推荐阅读:如何做好知识管理一些微服务拆分的浅见
也可以「关注」我 , 带你以技术思维看世界~
想更进一步和我一起玩耍 , 欢迎「搜索微信公号:跨界架构师」 。
内容包括:架构设计丨分布式系统丨产品丨运营丨个人深度思考 。
【聊聊Go的三色标记法】来源:搜狐