19.3.19 Python 垃圾回收机制

python 中的垃圾回收是以引用计数为主,标记-清除和分带收集为辅。

引用计数:python 在内存中存储每个对象的引用计数,如果计数为0,该对象就会消失,分配各该对象的内存就会释放。

标记-清除:一些容器对象,比如list、dict、tuple、instance等可能会出现引用循环,对于这些循环,垃圾回收器会定时回收这些循环(对象之间通过引用(指针)连在一起,构成一个有向图,对象构成这个有向图的节点,而引用关系构成这个有向图的边)。

分代收集:python把内存根据对象存活时间划分为三代,对象创建之后,垃圾回收器会分配一个代,而被分配更年轻的代是被优先处理的,因此越晚创建的对象越容易被回收。

猜你喜欢

转载自blog.csdn.net/GAOSHIQI5322688/article/details/88669046