В чем преимущество очередей над каналами при обмене данными между процессами? - PullRequest
9 голосов
/ 16 февраля 2010

Каковы были бы преимущества (преимущества) использования 2 Очереди по Трубе для связи между процессами

Я планирую использовать модуль multiprocessing python.

Ответы [ 2 ]

12 голосов
/ 16 февраля 2010

Большой выигрыш в том, что очереди защищены от процессов и потоков. Каналы не нужны: если два разных процесса пытаются читать или писать в один и тот же конец канала, происходят плохие вещи. Очереди также на несколько более высоком уровне абстракции, чем каналы, что может или не может быть преимуществом в вашем конкретном случае.

4 голосов
/ 16 февраля 2010

Очереди хранят сообщения и сохраняют их до следующей активной очереди и проталкивают их ... независимо от того, разорван ли канал или соединение ... с помощью канала / соединения, его прощание с сообщением с ошибкой ...

Надеюсь, это поможет, С наилучшими пожеланиями, Том.

...