通常、クライアントとサーバーの通信に異なるポートが必要なのはいつですか? (この質問はC#と一般的なソケットプログラミングです)。クライアント/サーバアプリケーションに異なるポートを使用する場合
シンプルなC#クライアント/サーバーアプリケーションを実装して使用しています。基本的には: -
- サーバーは
- サーバースポーンクライアントスレッドを接続/受け入れた上で、クライアント
- をリッスンお問い合わせ
- サーバー対応など
クライアントが話しを止めると、クライアント側が切断しない限り、サーバーはブロックされたスレッドで永久にNetworkStream.Read()
モードになります。
私は今、両側が何らかのイベントが両側で起きるまで静かにして、クライアントまたはサーバだけがデータを送信するという状況を考えています。したがって、両方とも同時にNetworkStream.Readモードにする必要があり、同時に(イベントが両側で同時に発生した場合)同時にお互いに送信することができます。
この場合、異なるポートが必要ですか、クライアントとサーバーの両方がNetworkStream.BeginReadモードになっていても、NetworkStreamが書き込みモードと送信モードの両方で同時に問題を起こす危険はありませんか?
ありがとうございました。