socket一直停在可读状态

时间:2022-09-20 19:32:19
服务器用select函数监听socket套接字可读的状态,当客户发了数据过来了时变为可读,然后服务端把缓冲区里的数据读读出来了,但是套接字的状态之后就一直停留在可读状态,且再次调用read去读里面的内容时,返回的都是0个字节,不知道怎么回事。并且服务端的socket描述符是阻塞型的

5 个解决方案

#1


连接可能已经失效了。

#2


read返回0表示连接已断开

#3


楼上正解.

read 返回 0 说明连接已经断了. 

#4


有没有重新设置FD_SET结构体啊?这个每次循环都要重置的

#5


select函数每次都需要重置可读,可写,以及超时时间。

#1


连接可能已经失效了。

#2


read返回0表示连接已断开

#3


楼上正解.

read 返回 0 说明连接已经断了. 

#4


有没有重新设置FD_SET结构体啊?这个每次循环都要重置的

#5


select函数每次都需要重置可读,可写,以及超时时间。