Что происходит, когда вы вызываете read () с слишком большой длиной? - PullRequest
1 голос
/ 28 февраля 2020

Что происходит, когда вы вызываете read () (или recv ()) для открытого сокета, и вы указываете длину, которая больше числа байтов, готовых для чтения в буфере (TCP), или длины следующего датаграмма (UDP)?

1 Ответ

4 голосов
/ 28 февраля 2020

В обоих случаях, если размер буфера больше, чем объем доступных данных, доступные данные считываются, и число фактически прочитанных байтов возвращается из функции. Это возвращаемое значение - то, что вы должны использовать при работе с данными.

...