On 18/12/2017 21:24, Paul Marks wrote:
So if the kernel decides to block, the thread will be suspended
(consuming no CPU) until it's done.
However, the UDP protocol has no concept of flow control, so blasting
out packets without any rate limit or acknowledgement mechanism is not
a good idea. If you saturate a link in the network, sendto() is not
obligated to block, or provide any feedback whatsoever.
That's right and you'll find that most kernels will just discard the
packet so the send never blocks.
-Alan