IOCP罗致的其他tcp无法使用
IOCP导致的其他tcp无法使用
我的一个程序是iocp模式。但有时候会导致其他程序 诸如 mssql 的连接、或者远程桌面等 用到tcp的程序连接不上。
我发现关闭我自己的程序,其他程序马上能用。
现象详细描述:
我开着我的程序,偶然会出现 远程练级,或者数据执行出现 正在连接等,我一关闭我的程序,他们就连接上了。
谁能告诉我下这个是什么原因。还有,他不是每次都出现。。。端口也用不同的。
------解决方案--------------------
很IOCP绝对没关系的,我好几个程序都是用IOCP了
------解决方案--------------------
资源耗尽,是不是没有释放呢。
------解决方案--------------------
你的iocp是否是accept接受客户连接的? 是否客户断开后,closesocket了. 即使closesocket了.但socket句柄资源是不会马上可以被再利用的.需要过一段时间. 如果有大量短连接访问.不出几w次.socket耗尽.导致的结果是,查看端口是监听状态,但connect不上去.只有把进程杀掉.
我的一个程序是iocp模式。但有时候会导致其他程序 诸如 mssql 的连接、或者远程桌面等 用到tcp的程序连接不上。
我发现关闭我自己的程序,其他程序马上能用。
现象详细描述:
我开着我的程序,偶然会出现 远程练级,或者数据执行出现 正在连接等,我一关闭我的程序,他们就连接上了。
谁能告诉我下这个是什么原因。还有,他不是每次都出现。。。端口也用不同的。
------解决方案--------------------
很IOCP绝对没关系的,我好几个程序都是用IOCP了
------解决方案--------------------
资源耗尽,是不是没有释放呢。
------解决方案--------------------
你的iocp是否是accept接受客户连接的? 是否客户断开后,closesocket了. 即使closesocket了.但socket句柄资源是不会马上可以被再利用的.需要过一段时间. 如果有大量短连接访问.不出几w次.socket耗尽.导致的结果是,查看端口是监听状态,但connect不上去.只有把进程杀掉.