我正在写一个自定义的TCP服务器和客户端,并做了大量的请求(准确的60,000)我开始得到这个10048的套接字错误,其中should mean“该地址已被使用。”客户端上的套接字错误10048?可能的原因?
错误不断发生,除非我暂停过程像2或3分钟,然后重新开始,然后在重新启动它后不久就会出现相同的错误。如果我暂停客户端进程并重新启动服务器进程,我仍然会在客户端上看到相同的错误。所以这是一个完整的客户端问题。
虽然这并没有任何意义,但这种错误通常只发生在绑定时,并且此错误发生在客户端而不是服务器上。可能的原因是什么?
我初始化的小摘录:
TcpClient client = new TcpClient();
client.Connect("XXXXX -- some ip", 25000);
client.NoDelay = true;
NetworkStream clientStream = client.GetStream();
而且,一切似乎是工作的罚款(包括它发送来回时间量),这完美的作品使用127.0.0.1
时,但是当把它放在另一台LAN计算机上,我开始得到10048错误。
初始化它有什么问题吗?还有什么可能导致客户端的这个错误?
我接着说:client.LingerState =新LingerOption(假,0);'和用netstat,你的权利,我有TIME_WAIT连接的废话负荷 – Earlz 2010-03-29 20:46:27
我的意思是,在添加'LingerState'后,我仍然有很多TIME_WAIT位 – Earlz 2010-03-29 20:48:12
ReuseAddr也没有帮助。 – Earlz 2010-03-29 21:37:27