我想使用pool.map来简化脚本中的并发性,并且我找到与下面链接相同的问题,但是没有得到解决此问题的简明方法。
Python multiprocessing pool.map for multiple arguments
from multiprocessing.dummy import Pool as ThreadPool
def run_multiple_args(tuple_args):
args_1 = tuple_args[0]
args_2 = tuple_args[1]
print args_1, args_2
pool = ThreadPool(2)
arg_list = [(1,2), (4,8)]
pool.map(func=run_multiple_args, iterable=arg_list)
pool.close()
pool.join()
我想用 def run_multiple_args(args_1,args_2): 替换 tuple_args 。
没有第三方lib,代码越少越好。 任何想法?
答案 0 :(得分:0)
您可以使用lambda解包参数元组:
from multiprocessing.dummy import Pool as ThreadPool
def run_multiple_args(args_1, args_2):
print args_1, args_2
pool = ThreadPool(2)
arg_list = [(1,2), (4,8)]
pool.map(func=lambda args: run_multiple_args(*args), iterable=arg_list) # <-- see here
pool.close()
pool.join()