我想修补python popen2,它试图通过在[3, SC_OPEN_MAX]
上进行循环来关闭所有打开的文件句柄。如何检测为了关闭而打开的所有文件处理程序?
这意味着如果某人使用ulimit
增加了一个像1,000,000这样的巨大值的上限,它将使任何使用popen来有效阻止的python应用程序。
问题的关键在于:你如何得到你的进程打开的文件处理程序列表。至少,该解决方案应该在Linux和Windows上工作。
注:这是重新固定http://bugs.python.org/issue1663329