我有一个程序,需要用不同的值调用100多次。

我想同时执行,而不是等待一个调用完成然后再次开始。

我该如何实现?

是多线程的解决方案。

我正在使用python。

最佳答案

您可以使用subprocess模块执行此操作。这是一个示例,该示例运行sleep命令一百次, sleep 值介于0到10秒之间。它会并行运行它们,然后在它们全部完成时退出。

import subprocess
import time

bin_path = 'sleep'
invocation_args = [[str(x*0.1)] for x in range(0,100)]

subprocs = []
for args in invocation_args:
    subprocs.append(subprocess.Popen([bin_path] + args))

while len(subprocs) > 0:
    subprocs = [p for p in subprocs if p.poll() is None]
    time.sleep(0.05)

print 'Finished running all subprocs'

关于python - 如何使用Python运行数百次程序?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8348978/

10-13 07:23