socket连接状态的判断

    使用非阻塞send 0字节的方法无法判断socket连接。那是msdn上介绍的方法。我的服务程序启动专门线程负责监听端口,并处理新的socket连接数据。我客户端使用shutdown+close断开了,但是服务程序中的socket的connected属性一直为true,send 0字节总是成功,没有异常。如果可以及时判断连接丢失的话,我就可以直接在主线程中接收和发送数据。否则要启动专门的线程来处理新的socket连接,当客户端断开时阻塞式的receive函数会直接返回0,我就可以直接close了。 

    另外有一种poll的方法,看了一下,也是要阻塞的方式才能判断,多个socket需要处理的情况下,不适合单线程来处理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值