【发布时间】:2017-01-04 13:18:12
【问题描述】:
我正在尝试同时在多个内核上运行一组相同的进程。这是我的代码的简化版本。
似乎map_async 从未调用过我的函数,另外,代码被卡住了(就在print (4) 之后)。
有什么想法吗?
import multiprocessing
pairs = [['a','b'],['c','d'],['e','f'],['g','h']]
def printPairs(first, second):
print('pairs =', pairs)
def parallel(function, pairs):
cpu_no = multiprocessing.cpu_count()
if len(pairs) < cpu_no:
cpu_no = len(pairs)
p = multiprocessing.Pool(cpu_no)
p.map_async(function, pairs, chunksize=1)
print('3, p = ', p)
p.close()
print('4')
p.join()
print('5')
return
parallel(printPairs, pairs)
【问题讨论】:
标签: python parallel-processing python-multiprocessing