[pyar] Consulta sobre twisted.

Facundo Batista facundobatista en gmail.com
Mar Dic 24 00:14:08 ART 2013


2013/12/20 Gilgamezh <listas en gilgamezh.me>:

> Mi duda es cómo debería realizar esas otras llamadas.
>
> Las hago todas dentro de la función que se llama en el callback y dejo que
> se realicen en serie? Cómo hago para que eso se haga de manera asincrónica y
> no bloquee el resto de los chequeos?

Depende. ¿Esas llamadas van a tardar? En tu caso, sí. Mandar un mail,
o tocar la DB, puede tardar 1ms o 5s.

Quizás encuentres en twisted (no busqué) una forma de mandar un mail
de forma asíncrónica... ahí tendrías ese problema resuelto.

Pero todavía te queda la DB, que sería bloqueante. Lo que se usa en
estos casos es ejecutar eso en un thread, lo cual twisted te facilita
mucho a través de la llamada deferToThread:

    http://twistedmatrix.com/documents/current/api/twisted.internet.threads.deferToThread.html

Slds.

-- 
.    Facundo

Blog: http://www.taniquetil.com.ar/plog/
PyAr: http://www.python.org/ar/
Twitter: @facundobatista


More information about the pyar mailing list