Read() подождите, пока не прибудут все данныеLinux

Ответить
Anonymous
 Read() подождите, пока не прибудут все данные

Сообщение Anonymous »

Я новичок в Linux и хочу знать, как функция read() ждет, пока не поступят все данные. Я знаю, что использование O_NONBLOCK будет ждать, пока не поступят данные, но я хочу, чтобы read() ждал, пока не поступят все данные.
В моем случае я нужна функция чтения с тайм-аутом, например, при срабатывании функции чтения, ей нужно подождать 500 миллисекунд, если пришли данные, затем необходимо сбросить тайм-аут и снова отсчитать и так далее. когда происходит таймаут и данные не приходят в течение 500 миллисекунд, тогда остальные данные должны считаться окончательными. Возможно ли это?
Я не хотел использовать функцию сна или использования сна с тайм-аутом, если данные не получены в течение фиксированного времени

Подробнее здесь: https://stackoverflow.com/questions/786 ... -data-came
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Linux»