Posted on:
Last modified:
一般来说,垃圾回收有两种算法:引用计数和标记删除。
CPython 中默认使用的垃圾回收算法是 Reference Counting。也就是对每个元素标记有多少个其他 元素引用了它,当引用数降到零的时候就删除。
为了解决循环引用的问题,CPython 使用了 Cyclic GC,遍历所有的环,并且把每一个元素的引用 减一,来检测每一个引用环是不是循环应用。
避免了循环引用的问题
实际的处理过程
Pluggable Generational Incremental
CPython 中默认使用的垃圾回收算法是 Reference Counting。也就是对每个元素标记有多少个其他元素引用了它,当引用数降到零的时候就删除。
为了解决循环引用的问题,CPython 使用了 Cyclic GC,遍历所有的环,并且把每一个元素的引用减一,来检测每一个引用环是不是循环应用。
避免了循环引用的问题
实际的处理过程
Pluggable Generational Incremental
© 2016-2022 Yifei Kong. Powered by ynotes
All contents are under the CC-BY-NC-SA license, if not otherwise specified.
Opinions expressed here are solely my own and do not express the views or opinions of my employer.
友情链接: MySQL 教程站