¿Cuál sería la ventaja (si) del uso de 2 Queues sobre un Pipe para comunicarse entre procesos?¿Cuál es la ventaja de las colas sobre las tuberías cuando se comunican entre procesos?
Estoy planeando utilizar el módulo multiprocessing
python.
¿Cuál sería la ventaja (si) del uso de 2 Queues sobre un Pipe para comunicarse entre procesos?¿Cuál es la ventaja de las colas sobre las tuberías cuando se comunican entre procesos?
Estoy planeando utilizar el módulo multiprocessing
python.
La gran victoria es que las colas son seguras para procesos y cadenas. Las tuberías no lo son: si dos procesos diferentes intentan leer o escribir en el mismo extremo de una tubería, suceden cosas malas. Las colas también tienen un nivel de abstracción algo más alto que las tuberías, lo que puede o no ser una ventaja en su caso específico.
Las colas retienen los mensajes y los retiene hasta la próxima vez que la cola está activa y la empuja ... independientemente de si la tubería o la conexión están rotas ... con una tubería/conexión, se despide del mensaje con una error ...
Espero que esto ayude, Saludos cordiales, Tom.
De hecho; la cola de multiprocesamiento se implementa como Tuberías protegidas con bloqueos. –
+1: punto excelente. – jldupont
+1 Jonathan, eso es genial. Aprendí algo nuevo. –