Thread Pool

Javier Santana qualopec en gmail.com
Lun Dic 21 18:41:54 CET 2009


Un ejemplo de uso simple vendría bien en el código.

Por otro lado desde que surgió la "polémica GIL" ya no he vuelto a
usar threads :P

2009/12/21 lasizoillo <lasizoillo en gmail.com>:
> El día 21 de diciembre de 2009 15:32, Pepe Aracil <pepe en diselpro.com> escribió:
>> Hola.
>>
>> Hace unos meses escribí esta implementación de un pool de tareas:
>> http://code.activestate.com/recipes/576910/
>>
>> Es un pool que crea nuevas threads a medida que se van necesitando.
>>
>> El caso es que cuando llamo muchas veces seguidas a una misma función que no
>> es
>> reentrante (se protege con un lock), el pool se llena hasta "maxWorkers"
>> impidiendo
>> que otras funciones se ejecuten.
>>
>> La idea sería informar al pool de que una determinada función no es
>> reentrante para que
>> la ponga en una cola a parte  y se asegure de que solo se está ejecutando un
>> thread
>> a la vez con dicha función.
>>
>> ¿Alguna idea de como implementarlo de forma eficiente?
>>
>>
>
> Creo que se me está escapando algo, porque se me ocurre como solución
> algo muy simple:
>  - Creas un pool para las funciones reentrantes con el maxWorkers > 1
>  - Creas otro pool para las funciones no reentrantes con el maxWorkers = 1
>
> Un saludo:
>
> Javi
>
> _______________________________________________
> Lista de correo Python-es
> http://listas.aditel.org/listinfo/python-es
> FAQ: http://listas.aditel.org/faqpyes
>
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes





Más información sobre la lista de distribución Python-es