TCP长连接出现Too many open files!!!!急急急!!!!
为实现TCP长连接:当客户端和服务端断开连接后 客户端再主动发起TCP链接 直到成功为止!这边做了一个测试,用网络调试助手作为TCP服务端,开发板作为客户端,服务端一直不开启,就是没有进行监听,客户端不间断的向指定端口发起链接请求,每次肯定都是不成功的,仍然对返回值进行close()操作,经过一定次数的请求后(1024次),客户端打印出Too many open files,后面及时服务端进行监听,客户端也无法连接上!除非客户端重启(是客户端重启不是服务端);在电脑cmd处输入netstat -na 发现大量端口处于close_wait状态!
麻烦高手指点 如何处理这种情况
设置 linger 或直接对套接字进行 shutdown 操作