2013-07-04 2 views
4

Я хочу отправить данные из одного дескриптора файла в другой через linux-aio без буферизации и без передачи данных в пользовательское пространство и из него. Возможна ли функция sendfile64() с linux-aio?Может ли sendfile() работать с linux-aio?

Я рассмотрел некоторые примеры linux-aio (в C/C++) и простые программы для копирования файлов. Все эти примеры делают чтение -> buffer -> writing.

С уважением, Филипа

+1

Если вы хотите использовать 'sendfile' в фоновом режиме, почему бы не сделать это в отдельном потоке или процессе? –

+1

yes Я могу использовать sendfile из нескольких posix-потоков, но мне нужно что-то вроде async sendfile. –

+1

Как асинхронное поведение 'aio' api отличается от вызова потока? – alk

ответ

0

Это возможно, если вы MMAP файл, то вы можете сделать AIO SendFile. Это быстрее, чем sendfile через do_splice и не следует синхронизировать с i_mutex. Посмотрите на модуль lighttp linux_aio.

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