2014-12-22 3 views
0

Каков наилучший способ обмена огромным количеством данных между процессами в python. Я работаю над алгоритмами обработки изображений, и я хотел бы отправлять кадры изображений между процессами.Python interprocess communication, огромные данные

+0

У меня был подобный вопрос некоторое время назад: http://stackoverflow.com/questions/20971191/sharing-state-between-forked-worker-processes-in-a-high-performance-environment. К сожалению, я не нашел удовлетворительного решения. Я закончил работать с всем кодом в одном процессе. Это не было проблемой, потому что я мог одновременно запускать несколько экспериментов с разными настройками параметров. – mbatchkarov

+2

Может быть, использовать 'shm_open'? Казалось бы, более эффективно использовать разделяемую память, а не перемещать огромные объемы данных без необходимости в качестве сообщений. –

ответ

1

Для межпроцессного взаимодействия между процессами Python вы должны использовать протокол связи асинхронного сообщения.

Python имеет отличную поддержку для различных систем, реализующих это как ZeroMQ и RabbitMQ.

Или вы можете проверить listener and client объекты библиотеки multiprocessing.

Смежные вопросы