Windows 7 cmd等待并行进程

Windows 7 cmd等待并行进程

我正在尝试在 Windows 7(和 10)中并行运行多个 Python 脚本。
我从另一个 Python 脚本运行它们,该脚本对脚本正在编辑的文件执行更多功能。
我希望外部脚本等到其他脚本在 cmd 中运行完毕。

我努力了启动/w但这使得每个脚本在关闭 cmd 窗口之前都要等待。

本质上我想要做的是让 python 等待这 3 个过程完成。最后一个脚本只是一个打印(“完成”)对我来说毫无意义。
用 3 个进程来解决这一点对我来说很重要,因为我需要用 30 个进程做同样的事情(在服务器上,有足够的可用线程)

这是我尝试运行的 cmd 命令。

os.system("start python node1.py & start python node2.py & start python node3.py && start /w printstatement.py")

有什么建议么?

答案1

通过使用本机 python 模块subprocess溢出社区。

import subprocess;
procs = [subprocess.Popen(['python', 'node{}.py'.format(n)]) for n in range(1, 4)];
rets = [p.wait() for p in procs]

感谢大家抽出时间。

相关内容