由于没有事件可用于在套接字断开连接时发出信号,因此您将必须以可接受的频率对其进行轮询。
使用此扩展方法,您可以拥有一种可靠的方法来检测套接字是否断开连接。
static class SocketExtensions{ public static bool IsConnected(this Socket socket) { try { return !(socket.Poll(1, SelectMode.SelectRead) && socket.Available == 0); } catch (SocketException) { return false; } }}


