Fly*_*ura 4 python parallel-processing python-multiprocessing
这是我想要并行运行 printRange() 的简单代码:
def printRange(lrange):
print ("First is " + str(lrange[0]) + " and last is " + str(lrange[1]))
def runInParallel():
ranges = [[0, 10], [10, 20], [20, 30]]
// Call printRange in parallel with each sublist of ranges given as argument
Run Code Online (Sandbox Code Playgroud)
我的问题与这里的 SO 问题不同,每个过程都是硬编码的,开始并最终加入。我想与其他 100 个 printRange() 工作函数并行运行 printRange()。每次硬编码是不可行的。这怎么可能?
使用多处理
from multiprocessing import Pool
def print_range(lrange):
print('First is {} and last is {}'.format(lrange[0], lrange[1]))
def run_in_parallel():
ranges = [[0, 10], [10, 20], [20, 30]]
pool = Pool(processes=len(ranges))
pool.map(print_range, ranges)
if __name__ == '__main__':
run_in_parallel()
Run Code Online (Sandbox Code Playgroud)
输出:
First is 0 and last is 10
First is 10 and last is 20
First is 20 and last is 30
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4475 次 |
| 最近记录: |