为什么非阻塞TCP套接字会在:: write()调用中花费大量时间?

时间:2016-05-08 23:32:28

标签: sockets tcp

对于非阻塞TCP套接字,我希望write()read()在任何情况下都会立即返回(read()是否可以填充缓冲区,write()是否可以发送整个缓冲区与否。)

在非阻塞模式下是否存在导致write()工作时间(毫秒)的现实世界情况?

1 个答案:

答案 0 :(得分:0)

原因很简单:线程饥饿。虚拟机正在从我的代码中窃取时间:例如,usleep(30000)可能在800毫秒后返回。