续上一个帖子:http://topic.csdn.net/u/20110312/00/c3863401-5100-4129-a838-17bb2312b869.html实践证明重用SOCKET是可以实现的,当服务端主动关闭套接字的时候此SOCKET可以重用(完全的4次握手)可从客户端关闭的时候,服务端的SOCKET总是处于CLOSE_WAIT状态,导致下一次AcceptEx失败.网上有资料说设置LINGER可以缩短CLOSE_WAIT的时间,但是对于异步好像是无效的.我是用的TELNET做测试,连接之后直接X掉,服务端出现CLOSE_WAIT状态,客户端(实际上进程已退出)出现WAIT_FIN_2状态.请问大家有什么方法可以解决这个问题,包括写驱动也可以.
但我觉得这样不好吧?不太懂,来学习。
您的socket迟,如果能实现,原理也应该和线程池类似吧,
现在有些疑义的地方在于,创建socket的开销大吗?
并不是所有的对象用池来管理是好的,线程池也有适用场景。如果管理的开销 远远大于了socket的创建开销,那就没必要了。
这里面有一个“AsyncSelect模型QQ程序教程区 ”栏目
只是现在的电脑配置很高,低配置的就能感觉得到.
如果你想快,就设置l_onoff=1;l_linger=0
不过来自客户端的连接是会成功的
不信你试试.
Connectex与Disconnectex 配对使用,在被动关闭的情况下,可以达到客户端Socket重用
这个里面对socket池有比较清晰的解释