私はソケットプログラミングにかなり慣れていないので、これは簡単な質問かもしれませんが、明確にしたいと思います。
複数のクライアントから単一のサーバーへのプログラムがあります。個々のクライアントは、メッセージを処理するサーバーにメッセージを送信し、宛先に渡します。つまり、サーバーは仲介者です。
サーバー側には、クライアントからのメッセージ (バッファに配置される) を「リッスン」するための、クライアントごとに 1 つのスレッドがあります。現時点では、すべてのクライアントが同じポートにメッセージを送信しています (私が知る限り)。
サーバーがメッセージを送信する前に処理する別のスレッドを設定することを考えています。それらのメッセージを送信するためにサーバー上の別のポートを使用することは理にかなっていますか?
これが議論であるという意味ではありませんが、何が一般的で、より論理的であるかがわかりません - 何かアドバイスはありますか?
クライアント側では、サーバーにメッセージを送信するための 1 つのスレッドと、受信するための別のスレッドを持つことを計画しています。他に必要な情報があれば教えてください!
編集
現時点では、1 サーバー対複数 (現在は数十、後で数百) のクライアント プログラムです。クライアントがサーバーからメッセージを受信する際に問題があるようです (トラブルシューティングを行っているため、同じポートを使用すると、問題があります)、同じポートでもう一度試してみます。受信ポートがビジーでメッセージを送信できないことも問題ではないかと思いました。