对于非阻塞 TCP 套接字,我希望 write()
或 read()
在任何情况下都会立即返回(无论是 read()
是否可以填充缓冲区,write()
是否可以发送整个缓冲区)。
在非阻塞模式下,是否存在导致 write()
工作时间(毫秒)的一些现实情况?
最佳答案
原因很简单:线程饥饿。虚拟机从我的代码中窃取时间:例如,usleep(30000) 可能会在 800 毫秒后返回。
关于sockets - 为什么非阻塞 TCP 套接字会在::write() 调用中花费大量时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37105937/