【发布时间】:2019-08-17 05:19:26
【问题描述】:
我有一个关于 sendto 的基本问题:
假设我们希望目的地将接收正好 X 字节的 UDP 数据包。这意味着,它不能接收小于 X 字节的数据包(如果 sendto 返回的数据小于 X 字节,这是可能的)。是否可以强制发送方准确发送 X 个字节,或者如果不可能,甚至返回错误? (即,接收方要么会得到 X 字节的数据包,要么不会得到数据包)。
编辑: 如果发送的字节数总是 X,那么为什么返回值(发送的字节数)可能小于发送数据的字节数(如在 https://docs.microsoft.com/en-us/windows/win32/api/winsock/nf-winsock-sendto ) 并且是非负数?
【问题讨论】: