我有一个 python 脚本,它调用一个函数
foo
,该函数执行一些使用 10GB 内存的操作,并将小对象 res
返回到主程序。打印 res 后,我删除了 res,但顶部显示 ipython 进程仍在使用大约 1GB 内存。如何确保进程释放所有未使用的内存?
def foo():
.... # some complication operation
return res
if __name__ == "__main__":
res = foo()
print(res)
del res
Python 中的
del
关键字仅删除对变量的引用。它不用于手动释放与变量关联的内存。相反,当 Python 的垃圾收集器运行时,它将释放与该变量关联的内存。实际上并没有发生内存泄漏,因为 Python 会自动为您管理内存。