我需要确保几乎同时运行两个进程(python脚本)。但我希望程序继续,直到其中一个完成。我正在使用系统从C ++程序运行这些进程。
这是同时运行script1和script2并在script2完成后继续运行的正确方法吗?
python ./script1.py & python ./script2.py
谢谢!
答案 0 :(得分:1)
您的代码段无法正常工作,因为只要script2
完成,代码就会继续。 script1
可能仍在后台工作。
如果您使用的是bash shell,则可以执行以下操作:
python ./script1.py &
PID1=$!
python ./script2.py
wait $PID1
$!
具有先前后台命令的进程ID。我们在后台运行script1
,然后运行script2
直到完成,然后我们等待script1
完成(如果尚未完成)。