+-

我想知道在轮询设置这些位时应该怎么做?关闭套接字,忽略它或什么?
最佳答案
POLLHUP表示套接字不再连接.在TCP中,这意味着FIN已被接收和发送.
POLLERR表示套接字出现异步错误.在TCP中,这通常意味着已经接收或发送了RST.如果文件描述符不是套接字,则POLLERR可能意味着设备不支持轮询.
对于上述两个条件,套接字文件描述符仍处于打开状态,尚未关闭(但可能已经调用了shutdown()).文件描述符上的close()将释放仍代表套接字保留的资源.理论上,应该可以立即重用套接字(例如,使用另一个connect()调用).
POLLNVAL表示套接字文件描述符未打开.关闭()它会是一个错误.
点击查看更多相关文章
转载注明原文:如何处理Linux套接字会重现POLLERR,POLLHUP和POLLNVAL? - 乐贴网