カスタム TCP サーバーとクライアントを作成していて、大量のリクエスト (正確には 60,000) を実行すると、このソケット エラー 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 エラーが発生し始めます。
初期化の仕方がおかしいのでしょうか?クライアント側でこのエラーを引き起こす可能性のあるものは何ですか?