我正在启动许多子流程subprocess.Popen
在Python中。
我想检查一个这样的过程是否已经完成。我找到了两种检查子流程状态的方法,但这两种方法似乎都强制该流程完成。
一种正在使用process.communicate()
并打印返回码,如下所述:在 Python 中使用 subprocess.Popen 检查进程的状态 https://stackoverflow.com/questions/14043030/checking-status-of-process-with-subprocess-popen-in-python。
另一个只是简单地调用process.wait()
并检查它是否返回 0。
有没有办法检查进程是否仍在运行而不等待它完成(如果是)?
Ouestion:...检查进程是否仍在运行的方法...
你可以这样做:
p = subprocess.Popen(...
"""
A None value indicates that the process hasn't terminated yet.
"""
poll = p.poll()
if poll is None:
# p.subprocess is alive
Python » 3.6.1 文档 popen-objects https://docs.python.org/3/library/subprocess.html#popen-objects
使用Python测试:3.4.2
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)