[Python-es] Como puedo testear si una python extensión tiene race conditions.

francis francismb en email.de
Lun Jul 9 20:03:56 CEST 2012


> "The Python global interpreter lock is released before calling any
> function exported by these libraries, and reacquired afterwards."
> http://docs.python.org/library/ctypes.html#loading-shared-libraries
>
> Vamos, que el GIL va a estar dehabilitado en tus llamadas al código C
> y no te va a librar de ningún race-condition.
>
> Así que supongo que puedes hacer un test que corra un porrón de veces
> para ver si surge algún race condition. Aunque que el test no
> encuentre ninguno no garantiza que no existan :-(
>
> Un saludo,
>
> javi
>
(repondiendo a la lista :-) )

Se me ocurrió que podría poner las llamadas a las dos partes:
1) lectura del buffer y
2)escritura en el buffer
(o parter parecidas quepueden tener las race) en diferentes 
python-threads (lado de python) y probar, como bien dices, "muchas veces".

Se tendrá que probar!

Gracias,
francis


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