Articles of cola de

Problemas al mezclar hilos / procesos en python

Estoy empezando a intentar hacer cosas multiproceso / multiprocesador y me encuentro con algunos problemas. Lo que quiero hacer es generar una serie de solicitudes de datos que deben descargarse de una base de datos remota. Estos se almacenan en un Queue.Queue (llamémoslo in_q). Una vez que he generado todas las solicitudes, inicie un número […]

Comunicando el final de la cola

Estoy aprendiendo a usar el módulo de Cola, y estoy un poco confundido acerca de cómo se puede hacer que un subproceso de consumidor de la cola sepa que la cola está completa. Idealmente, me gustaría usar get() desde el subproceso del consumidor y hacer que lance una excepción si la cola ha sido marcada […]

Enviar mensaje de un solo sentido a todos los hilos en Python

Necesito enviar información a cada subproceso que se está ejecutando en mi progtwig, y ​​cada subproceso tiene que procesar esa información. No puedo hacerlo usando una cola regular, porque de esa manera, una vez que un hilo elimina los datos de la cola, todos los demás hilos ya no podrán verlo. ¿Cuál es la mejor […]

Python cómo matar los hilos bloqueados en la cola con señales?

Comienzo un montón de hilos trabajando en una cola y quiero matarlos cuando envío el SIGINT (Ctrl + C). ¿Cuál es la mejor manera de manejar esto? targets = Queue.Queue() threads_num = 10 threads = [] for i in threads_num: t = MyThread() t.setDaemon(True) threads.append(t) t.start() targets.join()

Implementar una cola usando dos stacks de Python

He estado repasando algunas de las muchas preguntas de la entrevista de encoding. Me preguntaba cómo harías para implementar una cola usando dos stacks en Python. Python no es mi lenguaje más fuerte, así que necesito toda la ayuda que pueda obtener. Al igual que las funciones de cola, salida y salida.

threadth de python Productor-consumidor de cola con thread-safe

Estoy utilizando subprocesos y cola para recuperar la URL y almacenar en la base de datos Sólo quiero un hilo para hacer el trabajo de almacenamiento. Así que escribo el código de la siguiente manera: import threading import time import Queue site_count = 10 fetch_thread_count = 2 site_queue = Queue.Queue() proxy_array=[] class FetchThread(threading.Thread): def __init__(self,site_queue,proxy_array): […]

Python multiprocessing.Queue deadlocks on put and get

Tengo problemas de interlocking con este código: def _entropy_split_parallel(data_train, answers_train, weights): CPUS = 1 #multiprocessing.cpu_count() NUMBER_TASKS = len(data_train[0]) processes = [] multi_list = zip(data_train, answers_train, weights) task_queue = multiprocessing.Queue() done_queue = multiprocessing.Queue() for feature_index in xrange(NUMBER_TASKS): task_queue.put(feature_index) for i in xrange(CPUS): process = multiprocessing.Process(target=_worker, args=(multi_list, task_queue, done_queue)) processes.append(process) process.start() min_entropy = None best_feature = None […]

Subproceso múltiple de Python con una salida de recuperación de grupo / cola tan pronto como uno termina y ejecuta el siguiente trabajo en la cola

Actualmente estoy lanzando un subproceso y analizando stdout sobre la marcha sin esperar a que termine para analizar stdout. for sample in all_samples: my_tool_subprocess = subprocess.Popen(‘mytool {}’.format(sample),shell=True, stdout=subprocess.PIPE) line = True while line: myline = my_tool_subprocess.stdout.readline() #here I parse stdout.. En mi script, realizo esta acción varias veces, de hecho, dependiendo del número de muestras […]

Python: Queue.Empty Manejo de excepciones

Después de un breve debate con alguien sobre el manejo de excepciones en Python, provocado por el manejo de un objeto de cola, pensé que lo tiraría por ahí … MÉTODO 1: import Queue q = Queue.Queue() try: task=q.get(False) #Opt 1: Handle task here and call q.task_done() except Queue.Empty: #Handle empty queue here pass #Opt2: […]

Python utilizando múltiples procesadores

Digamos que tengo una gran lista de música de longitud variable que se debe convertir o imágenes de distintos tamaños que se deben cambiar de tamaño o algo así. El orden no importa, por lo que es perfecto para dividir entre varios procesadores. Si uso el multiprocesamiento. La función de mapa de Pool parece que […]