私はthe documentation on TcpClient.Close()を読み、これに気づいている:このメソッドは、最終的に関連したソケットの近くになりますし、また1を作成した場合は、データを送受信するために使用された関連NetworkStreamを閉じます呼び出しNetworkStreamとTcpClientの両方またはTcpClientだけを閉じる必要はありますか?
を。
だから、私が間違っているが、これは1がNetworkStream
も閉鎖されることTcpClient
にClose()
を呼び出す場合と言うなら、私を修正します。
コード例の最後に、なぜClose()
が呼び出されるのですか?
networkStream.Close();
tcpClient.Close();
tcpClient.Close();
に電話するだけで問題はありませんか?
はい、必要ありません。その例ではtcpClient.Close()を使用する必要はありません。その直後にプログラムが終了します。 –
.NET 3.0より前では、TcpClientとその基礎となるNetworkStreamの両方を明示的にクローズする必要がありました。 .NET 3.0以降では、TcpClientを閉じるときに基底のNetworkStreamが閉じられます。 TcpClientのClose()とDispose()は同等で、Close()は内部ログをいくつか追加しています。 –