请问TcpClient.Available是否投掷?

时间:2013-10-22 11:12:39

标签: .net exception tcpclient

docs at MSDN包含这个相当暧昧的句子:

  

如果远程主机关闭或关闭连接,则可以使用   抛出一个SocketException。

这是什么意思?文档不清楚。

是什么决定了可用属性是否会抛出?

1 个答案:

答案 0 :(得分:2)

  

这是什么意思?

您需要将其包装在try..catch块中,因为可能会抛出异常。

此外,我认为何时将是一个实现细节。反编译System.Net程序集以查看它何时抛出。

我怀疑如果远程方正确关闭套接字就不会抛出(在这种情况下会返回0),但这不是你可以依赖的东西。