我想创建大量通过subprocess.call同步运行的子进程(100+)。 这将大大降低性能,并向我保证一两次崩溃。
我的目标是限制同时运行的子进程数量,同时仍然在主列表上循环。
概念:
for line in list:
subprocess.call('/root/folder/to/my/script' + line)
i+=1
if i > 10:
if subprocess.call(stdout == 0):
create new subprocess
所以我想循环遍历一个列表,创建10个subprocess.calls,如果其中一个subprocess.call完成运行(停止提供输出的ax时间量?)或者其中一个subprocess.call崩溃:创建一个新的。
以下是对该问题的更直观的解释:
Running processes:
[o] [o]
[o] [o]
[o] [X] <--Crashed/Finished: Replace with new subprocess.call from list
[o] [o]
[o] [o]
我希望我清楚地解决我的问题/问题,如果我没有说清楚,请告诉我。