下面是我对TCP服务器端的代码。问题是当客户机上的应用程序关闭时,服务器无法自动尝试每2秒重新连接,直到连接。我怎样才能做到这一点?如何使TCP服务器自动重新连接到客户端? C#
我的想法是连接到客户端后,服务器创建一个状态线程,每隔30秒向该客户端发送一个字节,如果失败--->终止连接并重试再次连接。我不确定它是否会工作。
public static TcpClient client = new TcpClient();
public static int port = 6446;
public static string connectTo = "192.168.0.11";
public static NetworkStream dataStream;
static void Main(string[] args)
{
int retry = 0;
TryingConnect:
try
{
do
{
if (retry == 10)
{
retry = 0;
Console.Clear();
}
cout("Connecting...");
IPAddress ipAddress = IPAddress.Parse(connectTo);
client.Connect(ipAddress, port);
} while (client.Connected != true);
cout("Connected!");
dataStream = client.GetStream();
}
catch (Exception ex)
{
// Debug: MessageBox.Show(ex.ToString());
retry++;
Thread.Sleep(2000);
goto TryingConnect;
}
}
很确定你不能......这就是为什么它被称为_server_ – MickyD