¿Cómo puedo recuperar el valor de retorno de una función pasada a multiprocessing.Process?
En el código de ejemplo a continuación, me gustaría recuperar el valor de retorno de la funciónworker
. ¿Cómo puedo hacer esto? ¿Dónde se almacena este valor?
Código de ejemplo:
<code>import multiprocessing def worker(procnum): '''worker function''' print str(procnum) + ' represent!' return procnum if __name__ == '__main__': jobs = [] for i in range(5): p = multiprocessing.Process(target=worker, args=(i,)) jobs.append(p) p.start() for proc in jobs: proc.join() print jobs </code>
Salida:
<code>0 represent! 1 represent! 2 represent! 3 represent! 4 represent! [<Process(Process-1, stopped)>, <Process(Process-2, stopped)>, <Process(Process-3, stopped)>, <Process(Process-4, stopped)>, <Process(Process-5, stopped)>] </code>
Parece que no puedo encontrar el atributo relevante en los objetos almacenados enjobs
.
Gracias de antemano, blz