子流程状态在流程结束时永远不会改变
subprocess status never change at the end of process
我有一个简单的 python 代码可以打印一行。
# in the simple_print.py
print " in the simple_print.py "
在另一个文件中,我使用 subprocess.Popen 来执行此代码:
import psutil, subprocess
cmd = "python simple_print.py"
P = subprocess.Popen(cmd,shell=True)
psProcess = psutil.Process(pid=P.pid)
print "status: ", psProcess.status
状态总是运行。怎么了?因为它应该完成或终止。
谢谢大家
您永远不会等待它完成,您当前的调用进程永远不会知道您的客户进程做了什么,请在打印该状态之前尝试 P.wait()
。
我有一个简单的 python 代码可以打印一行。
# in the simple_print.py
print " in the simple_print.py "
在另一个文件中,我使用 subprocess.Popen 来执行此代码:
import psutil, subprocess
cmd = "python simple_print.py"
P = subprocess.Popen(cmd,shell=True)
psProcess = psutil.Process(pid=P.pid)
print "status: ", psProcess.status
状态总是运行。怎么了?因为它应该完成或终止。 谢谢大家
您永远不会等待它完成,您当前的调用进程永远不会知道您的客户进程做了什么,请在打印该状态之前尝试 P.wait()
。