我目前正在尝试使用池多处理功能,以便同时计算多个表的部分。我的代码基本上是:
def funtion(tab1,tab2,...)
...
def function_wrapper(args):
return function(*args)
pool = Pool(processes=num_thread)
arg = [(table1(i,:),table2(i,:),...)for i in range(1000)]
pool.map(function_wrapper, arg)
pool.close()
pool.join()
我得到错误:IndexError:索引太多了。
有人可以帮我写这个吗?感谢。
答案 0 :(得分:0)
table1(i,:)
应该引发一个SyntaxError。 funtion
应该是function
。
请修改下面的代码,以便我们有可运行的代码,它展示了IndexError。否则,如下所示,您发布的代码中没有错误。
import multiprocessing as mp
def function(tab1,tab2):
return tab1+tab2
def function_wrapper(args):
return function(*args)
if __name__ == '__main__':
pool = mp.Pool()
arg = [(i,i) for i in range(1000)]
print(pool.map(function_wrapper, arg))
pool.close()
pool.join()