+-

我在 Python中使用subprocess.Popen启动了许多子进程.
我想检查一个这样的过程是否已经完成.我发现了两种检查子进程状态的方法,但两者似乎都迫使进程完成.
一个是使用process.communicate()并打印返回码,如 here所述.
另一个是简单地调用process.wait()并检查它是否返回0.
我想检查一个这样的过程是否已经完成.我发现了两种检查子进程状态的方法,但两者似乎都迫使进程完成.
一个是使用process.communicate()并打印返回码,如 here所述.
另一个是简单地调用process.wait()并检查它是否返回0.
有没有办法检查进程是否仍在运行而不等待它完成?
最佳答案
Ouestion: … a way to check if a process is still running …
你可以这样做:
p = subprocess.Popen(...
"""
A None value indicates that the process hasn't terminated yet.
"""
poll = p.poll()
if poll == None:
# p.subprocess is alive
Python » 3.6.1 Documentation popen-objects
用Python测试:3.4.2
点击查看更多相关文章
转载注明原文:python – 有没有办法检查子进程是否仍在运行? - 乐贴网