当您调用长度过大的 read() 时会发生什么?

What happens when you call read() with length that is too large?

当您在打开的套接字上调用 read()(或 recv())时会发生什么,并且您指定的长度大于缓冲区 (TCP) 中准备读取的字节数或下一个数据报 (UDP)?

在这两种情况下,如果缓冲区的大小大于可用数据量,则读取可用数据,并从函数中 return 读取实际读取的字节数。该 return 值是您在对数据进行操作时应该使用的值。