[pyar] multiprocessing ejecuta secuencialmente los procesos

Gustavo Campanelli gedece en gmail.com
Vie Ago 19 15:10:42 ART 2016


On Fri, Aug 19, 2016 at 3:03 PM, Javier Marcon <javiermarcon en gmail.com>
wrote:

> Hola tengo un código que quiero correr con multiprocessing para que me
> corra varios procesos al mismo tiempo, pero al correrlo noto que todos
> los procesos corren en forma secuencial y no en paralelo. el código es:
>
> from multiprocessing import Pool
> from .models import Maquina
>
> def check_machines():
>     maqs = []
>     maquinas = Maquina.objects.order_by('-empresa') #all()
> #select_related('Empresa')
>     #print type(maquinas)
>     for maquina in maquinas:
>         maqs.append(maquina)
>     pool = Pool(processes=5) # process per core
>     pool.map(do_check, maqs)
>
> def do_check(maquina):
>     print "procesando %s" % maquina.host
>     time.sleep(10)
>     print "-> %s" % maquina.host
>
> Como deberia ponerlo para que corra todos los do_check simultaneamente?
>
> Gracias,
>
> Javier.
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar


No experimenté mucho con multiproeso, pero creo que te falta ejecutar
métodos como run() o start()

Gedece
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20160819/f3ac5ac5/attachment.html>


Más información sobre la lista de distribución pyar