内存管理机制:引用计数、垃圾回收、内存池。
1.引用计数:当一个 Python 对象被引用时其引用计数增加 1,当其不再被一个变量引用时则计数减 1,当引用计数等于 0 时对象被删除。
2.垃圾回收:
- 引用计数-当 Python 的某个对象的引用计数降为 0 时,说明没有任何引用指向该对象,该对象就成为要被回收的垃圾了。
- 标记清除-如果两个对象的引用计数都为 1,但是仅仅存在他们之间的循环引用,那么这两个对象都是需要被回收的。
- 分代回收
3.内存池:Python 的内存机制呈现金字塔形状。第 1 层和第 2 层是内存池,当对象小于256K 时由该层直接分配内存.
调优手段:1.手动垃圾回收。2.调高垃圾回收阈值。3.避免循环引用。