C++ Самое быстрое межпроцессное взаимодействие

Я знаю, что это (в некоторой степени) переменная, основанная на реализации и платформе, но в целом, какой самый быстрый метод межпроцессного взаимодействия в следующих 2 областях: 1) Оповещение других процессов 2) Обмен данными между процессами

Для предупреждения других процессов я протестировал семафоры boost::interprocess и прерывания в стиле c, используя SIGUSR1 и SIGUSR2. Что меня удивило, так это то, что прерывания в стиле c были на самом деле медленнее, чем семафоры повышения. Не уверен, что есть лучший способ сделать это, я, кажется, получаю времена в диапазоне 35 мкс для семафоров и в диапазоне 78 мкс для прерываний. Я могу опубликовать код, который я использовал, чтобы проверить это, если это удивительный результат.

Для обмена данными между процессами я использовал boost::interprocess:shared_memory_objects. Кажется разумным быстро, но не уверен, есть ли что-нибудь лучше там. Я не ищу точный ответ, а скорее направление, в котором можно проверить и посмотреть.

О, и я в первую очередь ищу ответы на Linux; если метод не работает на окнах, это нормально для меня.

0 ответов

Другие вопросы по тегам