当前位置:   article > 正文

python multiprocessing.Pool() map用于多变量函数的多进程并发_multiprocess pool map

multiprocess pool map

假设有一个多变量函数func(a1, a2, ..., an)

def func(a1, a2, ..., an):

       return a1 + a2 + ... + an

用列表包装一下这个函数的变量:  list_arg = [a1, a2, ..., an]

def func_list_arg(list_arg):

      a1 = list_arg[0]

      a2 = list_arg[1]

      .....

       an = list_arg[n-1]

       return func(a1, a2, ..., an)

然后就可以用pool的map方法来进行多进程并发。

pool = multiprocessing.Pool()

假设a1有一系列数list_a1,那么这就可以进行多进程同时执行函数,提高效率。

list_of_list_arg = []   # 一系列的多变量

for a1 in list_a1:

       list_arg =  [a1, a2, ..., an]   # 一组多变量

       list_of_list_arg.append(list_arg)  # 一系列的多变量

list_result = pool.map(func_list_arg, list_of_list_arg)  # 多进程并发

list_result就是对应于list_of_list_arg的一系列的结果,是一个列表

       

 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/181323
推荐阅读
相关标签
  

闽ICP备14008679号