假设我已经编写了一个应用程序,该应用程序使用套接字类(TCP)连接到服务器。如果在读取或写入时遇到SocketException,那么显然我必须继续操作并运行一个断开连接例程,以将应用程序的状态更改为Disconnected。

但是,如果我开始断开连接,并且在清理时会发生SocketException怎么办?

SocketException对我真的没有任何意义,因为无论如何我都要自己关闭套接字..那么可以吞下它吗?

我真的很想知道这种情况下的最佳实践是什么。

最佳答案

我一直都忽略.NET套接字和WCF的套接字异常。

我有一半的时间是异步发送调用的,因此,如果存在断开连接,直到超时之前我都无法找到它,这时我会收到一个超时异常,而忽略该异常。

10-05 22:17