c# – 中断后重新连接TCPClient
我有一个客户端应用程序的多个实例,通过TcpClient通过Internet连接到主应用程序. (两者都由我编码).所以连接如下:
TcpClient.Connect(ip,port) 我现在希望这可以处理各种类型的断开连接事件: >主应用程序(服务器)或客户端应用程序计算机失去Internet连接. >在恢复连接时,通信似乎丢失了,但是当我尝试重新连接时,我收到消息: >主应用程序(服务器)已关闭,然后重新启动. >重新启动主应用程序,然后尝试重新连接客户端应用程序,导致与上面相同的错误. 那么,我需要做什么?每当发生此类中断时,是否需要在客户端应用程序中实例化新的TcpClient?我没有尝试过,所以不知道这是不是一个糟糕的解决方案? 解决方法
是.如果TcpClient表示的连接断开,则无法使用该对象进行进一步通信,也无法再次连接.创建一个新的TcpClient对象. 你的问题可能是NAT网关超时你的TCP连接,所以你的服务器< - >客户端之间没有任何东西可以通过,如果从连接中读取了你的所有客户端,它将不会发现这种情况,它认为连接仍然是开放的. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |