Python Popen将stdout重定向到文件而不阻塞

Python Popen将stdout重定向到文件而不阻塞,python,Python,我们可以将stdout重定向到一个文件,如下所示 with open('/tmp/test.log', 'w') as fp: p = subprocess.Popen(['exe'], stdout=fp) 子流程将运行一个小时左右。 我的理解是,我们需要等待子流程在with块中关闭,以便fp始终有效 但是我运行的测试用例运行良好,没有阻塞等待 如果实际等待是一种很好的做法,那么有没有其他方法可以在不阻塞的情况下完成此操作?更好地使用 fp = open(... 而不是 with o

我们可以将stdout重定向到一个文件,如下所示

with open('/tmp/test.log', 'w') as fp:
   p = subprocess.Popen(['exe'], stdout=fp)
子流程将运行一个小时左右。 我的理解是,我们需要等待子流程在
with
块中关闭,以便
fp
始终有效

但是我运行的测试用例运行良好,没有阻塞等待

如果实际等待是一种很好的做法,那么有没有其他方法可以在不阻塞的情况下完成此操作?

更好地使用

fp = open(...
而不是

with open (...