Articles of locking

“Bloqueo” optimista con transacciones Django

Tengo una función fn() que necesita realizar un trabajo de base de datos de forma atómica que se basa en un conjunto de datos que no cambian durante su ejecución (la mayor parte del tiempo es cierto). ¿Cuál es la forma correcta de implementar esto en Django? Básicamente me gustaría hacer algo como esto: def […]

Python Pyserial lee datos desde varios puertos serie al mismo tiempo

Estoy intentando leer varios puertos serie al mismo tiempo con Python 2.7 y PySerial. Las características deben ser: en el progtwig principal, obtengo todos los puertos serie abiertos, los abro y agrego el objeto serie a los objetos serie Quiero leer los datos de cada puerto serie en un subproceso para la paralelización El gran […]

¿Cómo implementar el locking en un sistema multiproceso?

Estamos ejecutando muchos proyectos de jenkins en paralelo. Estamos usando python, y hemos elegido administrar los entornos virtuales con pyenv. Desafortunadamente, Pyenv tiene una condición de raza conocida. Para solucionar el problema, me gustaría implementar el locking en el nivel de proceso. Lo que quiero hacer es: lock some resource (a file?) do my pyenv […]

Tornado ‘@run_on_executor’ está bloqueando.

Me gustaría preguntar cómo funciona tornado.concurrent.run_on_executor (más tarde simplemente run_on_executor ), porque probablemente no entiendo cómo ejecutar una tarea síncrona para no bloquear el IOLoop principal. Todos los ejemplos que usan run_on_executor , que encontré, están usando solo el time para bloquear el bucle. Con el módulo de time funciona bien, pero cuando bash algunos […]

Progtwigción de eventos sin locking en Python

¿Es posible progtwigr una función para que se ejecute a cada xx milisegundos en python, sin bloquear otros eventos / sin usar demoras / sin usar el modo de espera? ¿Cuál es la mejor manera de ejecutar repetidamente una función cada x segundos en Python? explica cómo hacerlo con el módulo de progtwigción, pero la […]

Despertador de python

He hecho este pequeño despertador con la ayuda de mi hermano. Lo intenté anoche, sin el nonBlockingRawInput y funcionó bien, pero con el nonBlockingRawInput no funcionó. Hoy lo he probado pero ninguno de ellos funciona! Publicaré el código con el nonBlockingRawInput y el archivo “non”. Si desea el código sin nonBlockingRawInput , solo pregunte. Gracias […]

espera asincrónica / no locking espera en python

Me gusta mostrar cada letra de una cadena después de esperar un tiempo, para obtener un efecto de máquina de escribir. for char in string: libtcod.console_print(0,3,3,char) time.sleep(50) Pero esto bloquea el hilo principal, y el progtwig se desactiva. Ya no puedes acceder hasta que termine. Nota: se utiliza libtcod

¿Cómo hacer que el raw_input no se bloquee cuando se usa eventlet.monkey_patch () y por qué lo bloquea todo, incluso cuando se ejecuta en otro hilo?

Escribí este código mínimo para explicar mi caso: import threading import time import eventlet eventlet.monkey_patch() def printing_function(): while True: # here i want to do some work print “printing” time.sleep(1) if __name__ == ‘__main__’: thread = threading.Thread(target=printing_function) thread.start() while True: # here i want to wait for users input raw_input(“raw input\n”) print “inside main loop” […]

Cómo evitar sobrescribir un objeto que alguien más ha modificado

Me gustaría encontrar una forma genérica de evitar guardar un objeto si se guarda después de que lo haya comprobado. Podemos asumir que el objeto tiene un campo de timestamp que contiene la timestamp la última modificación. Si hubiera verificado (visité una vista usando un ModelForm, por ejemplo) en t1 y el objeto se guardó […]

multiproceso de Python: escribir en el mismo archivo de Excel

Soy nuevo en Python y estoy tratando de guardar los resultados de cinco procesos diferentes en un archivo de Excel (cada proceso se escribe en una hoja diferente). He leído diferentes publicaciones aquí, pero aún no puedo hacerlo ya que estoy muy confundido acerca de pool.map, colas y lockings, y no estoy seguro de lo […]