【发布时间】:2019-11-22 22:53:38
【问题描述】:
因此,在我的一生中,我无法弄清楚应该使用 pool.map() 或 pool.starmap() 的哪个组合来使这项工作如我所愿。下面的代码正确执行,触发(依次!)两个 runSim 实例并附加结果。
results = []
argsToRun = []
for n in range(2):
random.seed()
env = simpy.Environment() # Create the SimPy environment
env.clockRate = 1e9
argsToRun.append([env, adist, sdist, tdist, 108, intSpeed, runUntil])
for arg_list in argsToRun:
line = runSim(*arg_list)
results.append(line)
我的印象是,类似下面的代码将是并行运行这些实例的一种简单方法(结果不依赖于顺序)......但它们似乎都不起作用。我肯定遗漏了一些明显的东西吗?
with multiprocessing.Pool() as pool:
results = pool.map(runSim, argsToRun)
pool.close()
也不...
with multiprocessing.Pool() as pool:
results = pool.starmap(runSim, argsToRun)
pool.close()
【问题讨论】:
标签: parallel-processing python-multiprocessing