Articles of locking

Python / Erlang: ¿Cuál es la diferencia entre Twisted, Stackless, Greenlet, Eventlet, Coroutines? ¿Son similares a los procesos de Erlang?

Mi comprensión incompleta es que Twisted, Stackless, Greenlet, Eventlet, Coroutines hacen uso de IO de red asíncrona y hilos de usuario que son muy ligeros y rápidos de cambiar. Pero no estoy seguro de cuáles son las diferencias entre ellos. También suenan muy similares a los procesos de Erlang. ¿Son más o menos lo mismo? […]

¿Cuándo y cómo usar Tornado? ¿Cuándo es inútil?

Bien, Tornado no es bloqueante y es bastante rápido y puede manejar muchas solicitudes permanentes fácilmente. Pero supongo que no es una bala de plata y si simplemente ejecutamos a ciegas un sitio basado en Django o cualquier otro sitio con Tornado, no se dará ningún aumento de rendimiento. No pude encontrar una explicación completa […]

bloques – enviar entrada a la tubería de subproceso de Python

Estoy probando conductos de subprocesos con python. Soy consciente de que puedo hacer lo que hacen los progtwigs a continuación en Python directamente, pero ese no es el punto. Solo quiero probar la tubería para saber cómo usarla. Mi sistema es Linux Ubuntu 9.04 con el python 2.6 predeterminado. Comencé con este ejemplo de documentación […]

Cómo realizar el locking de archivos en Windows sin instalar un nuevo paquete

He agregado código a un paquete de Python ( brian2 ) que coloca un locking exclusivo en un archivo para evitar una condición de carrera. Sin embargo, como este código incluye llamadas a fcntl , no funciona en Windows. ¿Hay alguna manera de que pueda colocar lockings exclusivos en archivos en Windows sin instalar un […]

Hilo de Python y GIL

Estaba leyendo sobre el GIL y nunca se especificó realmente si esto incluye el hilo principal o no (supongo que sí). La razón por la que pregunto es porque tengo un progtwig con una configuración de subprocesos que modifica un diccionario. El hilo principal agrega / elimina en función de la entrada del jugador, mientras […]

Python: Socket sin locking o Asynchronos I / O

Soy nuevo en Python y actualmente tengo que escribir un socket de Python para ejecutarse como un script que se comunica con un dispositivo a través de TCP / IP (una estación meteorológica). El dispositivo actúa como el lado del servidor (escucha a través de IP: PUERTO, acepta la conexión, recibe la solicitud, transfiere datos). […]

Módulo SSH para python

Tengo que hacer un trabajo (usando mi servidor web) en una máquina remota que demora aproximadamente 10 minutos. He usado el módulo pxssh en python para el mismo, pero me da un “error de tiempo de espera” (no locking). Ahora, estoy usando paramiko pero eso regresa tan pronto como da la instrucción. Quiero que el […]

¿Es Tornado realmente no bloqueante?

Tornado se anuncia a sí mismo como “un marco de servidor web relativamente simple, sin locking ” y fue diseñado para resolver el problema C10k. Sin embargo, mirando su envoltorio de base de datos, que envuelve a MySQLdb, encontré el siguiente fragmento de código: def _execute(self, cursor, query, parameters): try: return cursor.execute(query, parameters) except OperationalError: […]

Cuándo y cómo usar el locking de Python

Leyendo a través de los documentos de Python me encontré con RLock . ¿Puede alguien explicarme (con ejemplo) un escenario en el que se preferiría Lock RLock ? Con particular referencia a: El “nivel de recursión” de RLock . ¿Cómo es esto útil? A hilos “propiedad” de un objeto RLock ¿Actuación?

Python condicional “con” diseño de locking

Estoy intentando hacer un locking compartido usando sentencias def someMethod(self, hasLock = False): with self.my_lock: self.somethingElse(hasLock=True) def somethingElse(self, hasLock = False): #I want this to be conditional… with self.my_lock: print ‘i hate hello worlds” ¿Eso tiene sentido? Básicamente solo quiero hacer el con si no tengo el locking. Además de poder lograr esto, ¿es un […]