Articles of Python multihilo

Compruebe si el hilo principal sigue vivo de otro hilo.

¿Cómo puedo verificar si el subproceso principal está vivo desde otro subproceso (no daemon, secundario)? El subproceso secundario es un subproceso no daemon y me gustaría comprobar si el subproceso principal todavía se está ejecutando o no, y detener este subproceso no daemon según el resultado. (Hacer el daemon de subprocesos no es bueno para […]

python: tkinter para mostrar el video de la cámara web y hacer un escaneo QR

He estado tratando de crear una ventana de nivel superior de tkinter que transmita video desde la cámara web y realice un escaneo QR. Obtuve este código de escaneo QR de SO y otro código que solo actualiza las imágenes de la cámara web en lugar de transmitir el video en una etiqueta tkinter. y […]

Limitar el número de solicitudes HTTP por segundo en Python

He escrito una secuencia de comandos que obtiene las URL de un archivo y envía las solicitudes HTTP a todas las URL al mismo tiempo. Ahora quiero limitar el número de solicitudes HTTP por segundo y el ancho de banda por interfaz ( eth0 , eth1 , etc.) en una sesión. ¿Hay alguna manera de […]

Python – agregando al mismo archivo desde múltiples hilos

Estoy escribiendo una aplicación que agrega líneas al mismo archivo desde varios subprocesos. Tengo un problema en el que algunas líneas se agregan sin una nueva línea. ¿Alguna solución para esto? class PathThread(threading.Thread): def __init__(self, queue): threading.Thread.__init__(self) self.queue = queue def printfiles(self, p): for path, dirs, files in os.walk(p): for f in files: print(f, file=output) […]

Un ejemplo multi-threading del python GIL.

He leído un poco acerca de cuán “malo” es este negocio de GIL en Python al escribir código de múltiples subprocesos, pero nunca he visto un ejemplo. ¿Podría alguien darme un ejemplo básico de cuándo la GIL causa problemas al usar subprocesos? ¡Gracias!

Python Asyncio, cómo crear y cancelar tareas desde otro hilo.

Tengo una aplicación multi-hilo de python. Quiero ejecutar un bucle asyncio en un subproceso y publicar calbacks y coroutines desde otro subproceso. Debería ser fácil, pero no puedo moverme la cabeza con las cosas de asyncio . Llegué a la siguiente solución que hace la mitad de lo que quiero, no dude en comentar sobre […]

“No se puede iniciar un nuevo error de hilo” en Python

Estoy ejecutando un script que extrae la información de los paquetes de Debian y la guarda en una base de datos. Después de extraer información de unos 100 paquetes, se produce un error. El error es “no se puede iniciar un nuevo hilo” ¿Por qué me enfrento a este error? ¿Cuál puede ser la solución […]

Cómo multihilo una operación dentro de un bucle en Python

Digamos que tengo una lista muy grande y estoy realizando una operación así: for item in items: try: api.my_operation(item) except: print ‘error with item’ Mi problema es doble: Hay muchos articulos api.my_operation tarda una eternidad en volver Me gustaría usar subprocesos múltiples para hacer girar un montón de api.my_operations a la vez para poder procesar […]

¿La forma correcta de limitar el número máximo de subprocesos que se ejecutan a la vez?

Me gustaría crear un progtwig que ejecute varios subprocesos ligeros, pero que se limite a un número constante y predefinido de tareas concurrentes, como esta (pero sin riesgo de condición de carrera): import threading def f(arg): global running running += 1 print(“Spawned a thread. running=%s, arg=%s” % (running, arg)) for i in range(100000): pass running […]

Hilo contra hilo

¿Cuál es la diferencia entre los módulos de threading y thread en Python?