IOCP&WSARecv

在连续的几个WSARecv之后关闭客户端,这时IOCP有可能不会返回所有WSARecv发起的重叠操作。这真TMD蛋疼,我在这问题上调试了很长时间,并不是每次都出现。 有一种情况WSARecv发起重叠操作而IOCP不返回,那就是客户端异常(拔网线,烧机器等等)。在正常情况下客户端断开连接IOCP会返回一个0字节接收。但是多个WSARecv发起的重叠操作在极少数情况下还是有几个不会返回0字节接收,这时就卡在那了,我去你个╮(╯_╰)╭。 由此我猜测,这几个卡在那的WSARecv和客户端异常断开情况类似,解决方法就是直接closesocket。 到目前为止使用close...
杂记 | 2012-01-05 23:19 | 阅读 1747 次 | 评论 1 条
浏览14400次