скажем, у меня есть процесс, который порождает 2 потока
первый поток прослушивает в узком цикле события пакетов на порте UDP.
второй поток должен получить байты, содержащиеся в этом UDP-пакете, и проанализировать его / сделать вещи.
Кто-нибудь может порекомендовать более быстрый метод, чем использование очереди сообщений linux?
я думаю, что они медленные, потому что они копируют байты при записи в очередь и копируют их снова при чтении из очереди
Я знаю о библиотеке zeromq, но есть ли удобный способ сделать это без этих накладных расходов?
я понимаю, что мог бы просто использовать tcp / ip-сокет между двумя потоками для простой связи в очереди, но есть ли более быстрый способ?
Я думаю, что может быть кольцевой буфер в памяти, который разделяется между потоками и мьютексом, используемым для управления указателем на последний обновленный элемент?
Кто-нибудь мысли здесь?