Python之gc 垃圾回收机制
在Python中,为了解决内存泄露问题,采用了对象引用计数,并基于引用计数实现自动垃圾回收。
#garbage collector to keep RAM in check
import gc
最近在kaggle kernel上跑程序,kernel commit以后跑到一半就显示完成了,且没有任何报错。这是内存/显存/硬盘不足导致的。
对已经销毁的对象,Python不会自动释放其占据的内存空间。
为了能够充分地利用分配的内存,避免程序跑到一半停止,要时不时地进行内存回收,这时候**gc(garbage collector)**就隆重登场啦!
用gc模块进行垃圾回收非常简单,如下所示:
# 加载gc模块
import gc
# 垃圾回收
# gc.collect() 返回处理这些循环引用一共释放掉的对象个数
gc.collect()
keep in check 及时控制
Reference
1.jihite https://www.cnblogs.com/kaituorensheng/p/4449457.html
2.Littletree_Zou https://www.jianshu.com/p/b6a20c812ce4