Создание длинных вызовов fgets для вызовов read () в linux

Я читаю довольно большие строки (до 128 КБ) текста с использованием fgets . Я вижу чрезмерное переключение контекста на сервере, используя strace Я вижу следующее:

read(3, "9005 10218 00840023102015 201008"..., 4096) = 4096

т.е. fgets читает куски 4096 байт за раз. Есть ли способ контролировать, как большие чанки fgets используют для вызова read () ?

5
задан codaddict 31 August 2010 в 19:15
поделиться