【发布时间】:2014-11-11 18:24:02
【问题描述】:
我有一个类似守护进程的进程,它使用plumbum 在子进程中运行命令。我注意到它泄漏了Popen 对象。
易于复制:
from plumbum.cmd import ls
x = [ ls() for i in range(500) ]
del x
import gc
gc.collect()
import objgraph
[ x for x in objgraph.most_common_types(10000) if 'Popen' in str(x) ]
=> [('Popen', 500)]
这是一个错误吗? (我找不到在哪里报告铅中的错误......)
我还“尝试”修改了泄漏的 Popen 对象,试图打破引用循环(假设存在一个,导致泄漏),但没有帮助。
在 linux 上运行,plumbum 版本 1.14.0。
【问题讨论】:
-
@sebulba,你知道答案吗?
标签: python memory-leaks subprocess plumbum