可以使用Python的subprocess
模块来判断进程的状态。
下面是一个示例代码,可以通过调用subprocess.Popen
函数启动一个进程,并使用poll
方法来判断进程是否结束:
import subprocess
def check_process_status(process):
if process.poll() is None:
print("进程正在运行")
else:
print(f"进程已结束,退出码为 {process.returncode}")
def main():
command = ["python", "test.py"] # 用于启动的命令
process = subprocess.Popen(command)
check_process_status(process)
if __name__ == "__main__":
main()
在上面的代码中,subprocess.Popen
函数用于启动一个进程,并返回一个Popen
对象。然后可以使用poll
方法来检查进程的状态。如果返回值为None
,则表示进程仍在运行;如果返回值不为None
,则表示进程已结束,可以通过returncode
属性获取进程的退出码。
注意:poll
方法只能检查进程的结束状态,并不能获取进程的详细信息。如果需要更详细的进程状态信息,可以使用psutil
库,它提供了更多关于进程的操作和查询方法。