c# 再次尝试 连接失败_c# – 中断后重新连接TCPClient

我有一个客户端应用程序的多个实例,通过TcpClient通过Internet连接到主应用程序. (两者都由我编码).所以连接如下:

TcpClient.Connect(ip,port)

我现在希望这可以处理各种类型的断开连接事件:

>主应用程序(服务器)或客户端应用程序计算机失去Internet连接.

>在恢复连接时,通信似乎丢失了,但是当我尝试重新连接时,我收到消息:

“已在连接的套接字上发出连接请求”

>所以我需要关闭并重新启动客户端应用程序.

>主应用程序(服务器)已关闭,然后重新启动.

>重新启动主应用程序,然后尝试重新连接客户端应用程序,导致与上面相同的错误.

那么,我需要做什么?每当发生此类中断时,是否需要在客户端应用程序中实例化新的TcpClient?我没有尝试过,所以不知道这是不是一个糟糕的解决方案?

do I need to instantiate a New TcpClient in the Client Apps, whenever such interruption occur?

是.如果TcpClient表示的连接断开,则无法使用该对象进行进一步通信,也无法再次连接.创建一个新的TcpClient对象.

你的问题可能是NAT网关超时你的TCP连接,所以你的服务器< - >客户端之间没有任何东西可以通过,如果从连接中读取了你的所有客户端,它将不会发现这种情况,它认为连接仍然是开放的.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值