Трубоподобный объект с большой пропускной способностью для межпотоковой связи (linux) - PullRequest
0 голосов
/ 30 июня 2011

Работа в C ++ под Linux.Есть ли реализация объекта со следующими свойствами:

  1. Дает мне конец чтения и конец записи файловые дескрипторы (или дескрипторы ).
  2. Может буферизовать несколько МБ данных (в отличие от максимум 64 КБ, которые я получаю из каналов).

Эти требования аналогичны конвейеру, но с большим буфером.Мне это нужно только для связи между потоками в одном и том же процессе.

Если такой вещи нет, как я могу ее реализовать (я не знаю, как реализовать дескриптор файла - FILE)?

РЕДАКТИРОВАНИЕ : у меня есть одна идея, как это сделать: для каждого направления связи откройте 2 обычных канала и запустите поток, который перемещает информацию от конца записи одного к концу чтениядругой буферизации данных.Это должно сработать, но я хочу знать, есть ли подход с меньшими накладными расходами.

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