[英]How to get notified when a child process exits and closes a pipe?
这是我先前的问题的后续措施:
假设我有一个Python程序,这叉子和高管与另一Python程序subprocess.Popen
。
我想在派生之前创建一个管道,并在孩子退出时关闭管道时得到通知。 当然,我不想同步等待管道。 它在Python中可行吗?
您可以使用子流程poll()
尽管您将不时进行测试以查看是否完成
调用程序:
import subprocess
import time
c=subprocess.Popen(['python', 'called.py'], stdout=subprocess.PIPE)
finished = False
while finished == False:
if c.poll() != None:
finished = True
break
time.sleep(1)
print "Still working"
print "finished"
调用程序:
import time
time.sleep(15)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.