マルチプロセッシングを使用したマップのこの簡単な例があります。しかし、これでも正しく実行できません。
import multiprocessing
p = multiprocessing.Pool()
rere = range(50)
print p.map(lambda x: x+1, rere)
この例外が出力されます。
Exception in thread Thread-3:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 808, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 761, in run
self.__target(*self.__args, **self.__kwargs)
File "/usr/lib/python2.7/multiprocessing/pool.py", line 342, in _handle_tasks
put(task)
PicklingError: Can't pickle <type 'function'>: attribute lookup __builtin__.function failed
また、Ctrl+C で終了できません。
サンプルを機能させるには、どのように修正すればよいですか?