Estoy escribiendo un programa de ejemplo para probar el uso de multiprocesamiento de trabajadores en Python 2.7.2+pitón piscina multiprocesamiento aserción de error en el intérprete
Este es el código que he escrito en el intérprete de Python ubuntu
>>> from multiprocessing import Pool
>>> def name_append(first_name,last_name):
... return first_name+" "+last_name
...
>>> from functools import partial
>>> partial_name_append=partial(name_append,'kiran')
>>> partial_name_append('acb')
'kiran acb'
>>> abc='kiran'
>>> pool=Pool(processes=4)
>>> pool.map(partial_name_append,abc)
['kiran k', 'kiran i', 'kiran r', 'kiran a', 'kiran n']
>>> pool.close()
>>> pool.join()
>>> pool.map(partial_name_append,abc)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/multiprocessing/pool.py", line 226, in map
assert self._state == RUN
AssertionError
después de que consiguiera errores salmuera, por encima de mi grupo de trabajadores código de grandes conjuntos de datos, que estoy tratando de hacer pequeños ejemplos y tratar de averiguar cuál es el error.
yo no entiendo por qué el mismo comunicado 'pool.map' no funciona, cuando se ha trabajado anteriormente. Creo que he ejecutado el 'mapa de la piscina' correctamente, pero no entiendo la razón.
¿Es este error relacionado con "PicklingError: No se puede conservar en vinagre: búsqueda de atributos incorporado .function fallido"
Puede alguien ayudarme?
Gracias
'multiprocessing.Pool()' no funciona en el intérprete interactivo. Echa un vistazo a la [aquí] Documentación (http://docs.python.org/library/multiprocessing.html) –
'multiprocess.Pool()' sin embargo funciona en el intérprete interactivo. –