下面是我對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