我正在使用 PIL(Python 图像库)编辑图像。每一步(转换、旋转、调整大小...)都会创建更多图像。 (文档摘录:“返回旋转给定度数的图像的副本......”)所以我想释放内存。
你知道下面的做法是否节省内存?
import PIL.Image
image = PIL.Image.open('Image.jpg')
garbage = image
image = image.convert('RGB')
del garbage
你不需要做临时的garbage
参考。
当执行该语句的右侧时:
image = image.convert('RGB')
创建一个新的 Python 对象。
通过将其分配回image
旧对象image
用于表示其引用计数减为零,并被发送到垃圾收集器。
然而,与 Python 的工作原理无关,我见过 PIL 问题,其中由于真正的错误而形成了内存泄漏。例如,这里是使用绘制文本时的问题的讨论:
PIL 绘制文本内存泄漏 http://mail.python.org/pipermail/image-sig/2002-March/001759.html
我知道这是一个非常古老的讨论,但我still当我使用 PIL 时,有时会出现这个问题!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)