想升级一下电脑,请各位大神请尽快负责帮忙一下

一个关于基于IOCP架构的通信程序運行一段时间后无法,客户端再也连接不上问题请各位大神请尽快负责帮忙分析一下,万分感谢

我做了一个数据采集软件通信服务网絡架构采用的是小猪发布在网上的一个关于IOCP的例子(  / 基本上没有改动)。目前情况是有300多个客户端连接服务程序刚开始连接的时候基本仩300多个都能连接上,能正常的收发数据但是运行五六个小时后出现了问题,那些离线的客户端再也无法连接上程序了已经连上没有掉線的客户端能正常收发数据,但是一掉线就再

也连不上了我用模拟软件ComPortDebug尝试连接也连接不上,显示拒绝连接(错误代码是10060)但是通信程序重启之后客户端又能正常连接了。我研究了一下初步猜想可能是 投递AcceptEX请求出了问题导致没有socket用于等待连接。但是又不确定是不是这個原因希望各位大神请尽快负责能帮我分析一下。ps: 这个程序是有心跳机制的大概几分钟没有收到客户端的心跳包,就会判定离线释放资源。

还有可能是listen的socket已经不在监听了

------解决思路----------------------你采用了心跳机制。。重连是在几分钟之内还是过掉了几分钟还是连不上    如果是几汾钟之内,客户端关闭连接close_wait状态。但服务端忙与读或者写,没有关闭连接代码需要判断socket,一旦读到0断开连接,read返回负检查一下errno,如果不是AGAIN就断开连接。

}

我们使用cookie来确保您的高速浏览体驗继续浏览本站,即表示您同意我们使用cookie

}

我要回帖

更多关于 请大神 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信