Межпроцессное взаимодействие в с / с ++ - PullRequest
5 голосов
/ 24 мая 2011

В настоящее время я использую очередь сообщений для передачи сообщений между двумя процессами, но я достигаю максимального размера в 32 КБ.Какой самый лучший вариант.Фрагментация сообщения, а затем повторная сборка или использование сокетов TCP / IP для связи между процессами или чем-либо, с чем вы, ребята, могли бы помочь мне.

1 Ответ

1 голос
/ 24 мая 2011

Только вы можете определить правильный ответ, но доменные сокеты Unix, вероятно, являются лучшей альтернативой, если вы не хотите разбивать / восстанавливать сообщения.Совместно используемая память будет работать быстрее, но у нее будут проблемы с синхронизацией.

Если программы, читающие / записывающие очередь, являются однопоточными, разделение сообщений достаточно простое - в основном, в начале каждого сегмента помещается байтуказывающий, является ли это новым сообщением или продолжением предыдущего.Если бы они были нарезаны, я бы укусил пулю и переключился бы на что-то другое.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...