Python en Windows: ¿cómo esperar varios procesos secundarios?
¿Cómo esperar varios procesos secundarios en Python en Windows, sin espera activa (sondeo)? Algo como estocasi funciona para mi:
<code>proc1 = subprocess.Popen(['python','mytest.py']) proc2 = subprocess.Popen(['python','mytest.py']) proc1.wait() print "1 finished" proc2.wait() print "2 finished" </code>
El problema es que cuandoproc2
termina antesproc1
, el proceso padre todavía esperaráproc1
. En Unix uno usaríawaitpid(0)
en un bucle para obtener los códigos de retorno de los procesos secundarios a medida que terminan, ¿cómo lograr algo como esto en Python en Windows?