Articles of multihilo

Hilos de Python pasando parámetros

Estoy tratando de pasar algún parámetro a la banda de rodadura del servidor, pero no tengo idea de cómo. este es mi codigo HOST, PORT = socket.gethostbyname( socket.gethostname() ), 31000 self.server = SocketServer.ThreadingTCPServer( ( HOST, PORT ), MCRequestHandler ) ip, port = self.server.server_address self.server_thread = threading.Thread( target = self.server.serve_forever ) este es el MCRequestHandler class […]

Python: lectura de archivos enormes mediante el uso de linecache Vs acceso a archivos normal abierto ()

Estoy en una situación en la que varios subprocesos leen el mismo archivo enorme con varios punteros a un mismo archivo. El archivo tendrá al menos 1 millón de líneas. La longitud de cada línea varía de 500 caracteres a 1500 caracteres. No “escribirá” operaciones en el archivo. Cada hilo comenzará a leer el mismo […]

Hilo de Python. El temporizador comienza de inmediato, no a la hora especificada.

Quiero ejecutar una función en cada 3 segundos, el código funciona si llamo a una función sin argumentos como los siguientes: def mytempfunc(): print “this is timer!” threading.Timer(5, mytempfunc).start() pero si llamo a una función con un argumento como este: def myotherfunc(a,b,c,d): print “this is timer!” threading.Timer(5, myotherfunc(a,b,c,d)).start() El nuevo hilo se creará y comenzará […]

Cómo esperar a que un hilo generado termine en Python

Quiero usar hilos para hacer algún trabajo de locking. ¿Qué debo hacer para: Engendrar un hilo de forma segura Hacer trabajo útil Espera hasta que el hilo termine. Continuar con la función. Aquí está mi código: import threading def my_thread(self): # Wait for the server to respond.. def main(): a = threading.thread(target=my_thread) a.start() # Do […]

Problemas de subprocesos y señales en PyQt

Estoy teniendo algunos problemas con la comunicación entre Threads en PyQt. Estoy usando señales para comunicarme entre dos hilos, un remitente y un oyente. El remitente envía mensajes, que se espera sean recibidos por el oyente. Sin embargo, no se reciben mensajes. ¿Alguien puede sugerir lo que podría salir mal? Estoy seguro de que debe […]

¿Hay funciones integradas que bloqueen en la E / S que no permitan que se ejecuten otros subprocesos?

Me encontré con esta statement interesante en la sección “Advertencias” de la documentación para el módulo de thread hoy: No todas las funciones integradas que pueden bloquear la espera de E / S permiten que se ejecuten otros subprocesos. (Los más populares ( time.sleep() , file.read() , select.select() ) funcionan como se espera.) Casi en […]

Hilos en trenzado … ¿cómo usarlos correctamente?

Necesito escribir una aplicación simple que ejecute dos subprocesos: – subproceso 1: se ejecuta en periodos de tiempo, digamos cada 1 minuto – subproceso 2: solo un ‘normal’ mientras que el bucle verdadero hace ‘cosas’ si no fuera por el requisito de correr en un intervalo de tiempo, no habría mirado torcido en absoluto, pero […]

Cómo usar múltiples hilos

Tengo este codigo import thread def print_out(m1, m2): print m1 print m2 print “\n” for num in range(0, 10): thread.start_new_thread(print_out, (‘a’, ‘b’)) Quiero crear 10 hilos, cada hilo ejecuta la función print_out , pero fallé. Los errores son los siguientes: Unhandled exception in thread started by sys.excepthook is missing lost sys.stderr Unhandled exception in thread […]

Cómo hacer una recuperación de URL sin locking en Python

Estoy escribiendo una aplicación GUI en Pyglet que tiene que mostrar de decenas a cientos de miniaturas desde Internet. En este momento, estoy usando urllib.urlretrieve para agarrarlos, pero esto se bloquea cada vez hasta que se terminan, y solo se agarra uno a la vez. Preferiría descargarlos en paralelo y hacer que cada uno se […]

Compruebe si el hilo actual es el hilo principal, en Python

Esto ha sido respondido para Android , Objective C y C ++ anteriormente, pero aparentemente no para Python. ¿Cómo puedo determinar de manera confiable si el hilo actual es el hilo principal? Puedo pensar en algunos enfoques, ninguno de los cuales realmente me satisface, considerando que podría ser tan fácil como compararlo con el threading.MainThread […]