三色标记原理

本文阅读 1 分钟
首页 golang 正文

原理:

首先把所有的对象都放到白色的集合中

  • 从根节点开始遍历对象,遍历到的白色对象从白色集合中放到灰色集合中 
  • 遍历灰色集合中的对象,把灰色对象引用的白色集合的对象放入到灰色集 合中,同时把遍历过的灰色集合中的对象放到黑色的集合中 
  • 循环步骤 3,知道灰色集合中没有对象
  • 步骤 4 结束后,白色集合中的对象就是不可达对象,也就是垃圾,进行回收
本文来自投稿,不代表本站立场,如若转载,请注明出处:
如何限制 goroutine 并发数量 (channel 或 WaitGroup)
« 上一篇 09-17
分片键的选择?
下一篇 » 09-17

发表评论

发表评论