请问如何解决出现大量的socket WSAECONNRESET(10054) 错误!
两台机器,一台win server2003作服务器, 一台winxp作客户端
客户端首先向服务器申请建立了一个10000个socket连接, 每个socket接收缓冲是8K,然后客户端线程进入一个死循环,
while(1){Sleep(5000);}
客户端仅仅是建立了连接,将套接口装到数组中,其他什么都不做包括接收数据,双方连接建立完毕后,服务器使用选择端口,分批(64个套接口一批)向客户端发送数据,每次向每一个套接口发送2K数据,也就是调用send(),
问题就出在为什么服务器每次调用send()总是返回 WSAECONNRESET(10054) 的错误,但客户端实际上并没有调用closesocket(),也就是并没有强迫关闭套接口。
另外,如果连接只有5000个的情况下,发送还算正常,最多客户端那边接收缓冲装满,但不至于关闭连接,好像是套接口的数量越多,连接就越不稳定,出错的几率越大!