.
在網路程式設計中,最重要的就是 連線狀態的偵測與斷線時的處理
本篇主要是偵測當在建立連線時,連線失敗的處理方式
首先會先嘗試連線並偵測一段時間,確認連線是否成功
偵測的時間可以自行定義,當偵測到連線失敗時採用重連機制
並設定重試次數,當超過該次數判定連線失敗
以下為實作程式碼
開始連線後偵測三秒鐘,如果連線失敗則重試
如果重試超過三次則判定連線失敗
- TcpClient tcpClient ;
-
- public void TCP_Connect()
- {
- tcpClient = new TcpClient();
- IAsyncResult result = tcpClient.BeginConnect("192.168.10.100", 6300,null, null);
- result.AsyncWaitHandle.WaitOne(3000,true);
-
- if (!result.IsCompleted)
- {
- if (try_count < 3)
- {
- MessageBox.Show("Ethernet Connection Error, Retry");
- try_count++;
- tcpClient.Close();
- TCP_Connect();
- }
- else
- {
- tcpClient.Close();
- MessageBox.Show("Missing Connection");
- }
- }
- }