Я пытаюсь сделать многопроцессорность, как показано:
from multiprocessing import Pool
def main():
df1 = function1()
df2 = function2(df1)
df3 = list(df2.groupby('key')
p = Pool(2)
p.map(model, df3)
Вышеописанное работает отлично.Однако, когда я добавляю в это:
from multiprocessing import Pool
def main():
df1 = function1()
df2 = function2(df1)
df3 = list(df2.groupby('key')
df4 = [x+ (df1 [x[0]][0],)+ (df1 [company[0]][1],) for x in df3 ]
p = Pool(2)
p.map(model, df4)
Теперь я получаю эту ошибку:
cPickle.PicklingError: Can't pickle <type 'function'>: attribute lookup __builtin__.function failed
Я не понимаю, как эта дополнительная строка приводит к сбою?Нет вызова внешней функции.