Posts

Showing posts from November, 2014

Gevent, monkey patching + threads en python

Hay ocasiones en que las coroutines  y hebras en python no se llevan muy bien, eso sucede cuando aplicas parches utilizando gevent en gran parte de bibliotecas generales. Me pasó que empecé a ver un error muy extraño: Exception KeyError : KeyError ( 9182734645 ,) in < module 'threading'...   Lo extraño es que no estaba trabajando con hebras, sino que necesitaba aplicar coroutines  a la biblioteca de sockets. A decir verdad, no quise usar tiempo en investigar porque sucedía y necesitaba hacer que mi código funcionara, por lo que simplemente fui más específico en aplicar el parche y solo toqué las bibliotecas relacionadas con sockets. Luego de eso obviamente, el error extraño desapareció. Lo bueno es que ser más específico tampoco fue difícil. > from gevent import monkey; monkey.patch_socket()