文章内容
2021/2/3 11:18:31,作 者: 黄兵
在Python 3中Concurrent.futures 与 Multiprocessing 的区别
这篇文章详述了在Python 3中Concurrent.futures与Multiprocessing的异同。同时用代码的方式列举了两者之间的相似之处,代码摘录如下:
使用concurrent.futures的方式:
from concurrent.futures import ProcessPoolExecutor def pool_factorizer_map(nums, nprocs): # Let the executor divide the work among processes by using 'map'. with ProcessPoolExecutor(max_workers=nprocs) as executor: return {num:factors for num, factors in zip(nums, executor.map(factorize_naive, nums))}
使用multiprocessing的方式:
import multiprocessing as mp def mp_factorizer_map(nums, nprocs): with mp.Pool(nprocs) as pool: return {num:factors for num, factors in zip(nums, pool.map(factorize_naive, nums))}
可以看到两者本质是相同的。
评论列表