我有一个 TcpClient 对象,它使用其底层 NetworkStream.Write() 向服务器发送一些数据。因此,我有:
TcpClient server = new TcpClient(serverName, 50001);
/* ... */
NetworkStream stream = server.GetStream();
现在,当按下按钮时,连接应该关闭。关闭连接的正确方法是什么?MSDN 文档说关闭 TcpClient(使用 .Close())实际上并没有关闭套接字,只关闭了 TcpClient 资源(这至少是我理解文档的方式)。
那么,执行下一个代码会正确关闭连接吗?
stream.Close();
server.Close();
这是否足够,或者我应该首先(以某种方式)检查流(或服务器)是否可以关闭(以防连接半开或其他情况)......
更重要的是,NetworkStream.Close()
MSDN 文档声明它释放资源(甚至是套接字),所以也许关闭流就足够了,因为我在那之后阻止使用 TcpClient。
什么是正确的方法?