From 3f6685c77beeb12baf840733fb890860f4c26e7c Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期四, 25 七月 2024 17:25:59 +0800
Subject: [PATCH] 2024年07月25日17:24:45

---
 HDL_ON/DAL/DriverLayer/Control_TcpClient.cs |  104 +++++++++++++++++++++++++++++++--------------------
 1 files changed, 63 insertions(+), 41 deletions(-)

diff --git a/HDL_ON/DAL/DriverLayer/Control_TcpClient.cs b/HDL_ON/DAL/DriverLayer/Control_TcpClient.cs
index c90eac3..84e305b 100644
--- a/HDL_ON/DAL/DriverLayer/Control_TcpClient.cs
+++ b/HDL_ON/DAL/DriverLayer/Control_TcpClient.cs
@@ -130,6 +130,7 @@
         /// </summary>
         public void Connect()
         {
+            return;
             lock (lockObj)
             {
                 if (isConnected)
@@ -224,6 +225,10 @@
         /// <param name="bytes">闇�瑕佸彂閫佺殑瀛楄妭</param>
         public void SendMessage(byte[] bytes)
         {
+            return;
+#if __IOS__
+           
+#endif
             if (heartBeatLogIdList.Count > 3)
             {
                 try
@@ -240,6 +245,14 @@
             }
             try
             {
+                if (_tcpClient == null)
+                {
+                    return;
+                }
+                if (!_tcpClient.Connected)
+                {
+                    return;
+                }
                 if (_tcpClient.GetStream().CanWrite&& isConnected)
                 {
                     _tcpClient.GetStream().Write(bytes, 0, bytes.Length);
@@ -258,6 +271,7 @@
         private DateTime heartBeatTime;
         public void HeartBeat()
         {
+            return;
             lock (lockObj)
             {
                 if (heartBeatThread == null)
@@ -295,7 +309,10 @@
                     }
                     finally
                     {
-                        heartBeatThread = null;
+                        if (heartBeatThread != null)
+                        {
+                            heartBeatThread = null;
+                        }
                         HeartBeat();
                     }
                 }
@@ -317,54 +334,59 @@
                 {
                     receiveThread = new Thread(() =>
                     {
-                        while (isConnected)
+                        try
                         {
-                            if (_tcpClient == null)
+                            while (isConnected)
                             {
-                                try
+                                if (_tcpClient == null)
                                 {
-                                    receiveThread?.Abort();
-                                }
-                                catch { }
-                                finally
-                                {
-                                    receiveThread = null;
-                                }
-                                return;
-                            }
-                            if (!_tcpClient.Connected)
-                            {
-                                MainPage.Log("tcp瀹㈡埛绔柇寮�浜嗚繛鎺�...");
-                                isConnected = false;
-                                return;
-                            }
-                            try
-                            {
-                                // 瀹氫箟涓�涓�2M鐨勭紦瀛樺尯锛�
-                                byte[] arrMsgRec = new byte[1024 * 1024 * 2];
-                                try
-                                {
-                                    int size = _tcpClient.GetStream().Read(arrMsgRec, 0, arrMsgRec.Length);
-                                }
-                                catch (Exception ex)
-                                {
-                                    isConnected = false;
-                                    MainPage.Log($"灞�鍩熺綉tcp鏁版嵁鎺ユ敹寮傚父:{ex.Message}");
+                                    try
+                                    {
+                                        receiveThread?.Abort();
+                                    }
+                                    catch { }
+                                    finally
+                                    {
+                                        receiveThread = null;
+                                    }
                                     return;
                                 }
-                                var tcpDataString = System.Text.Encoding.UTF8.GetString(arrMsgRec, 0, arrMsgRec.Length);
-
-
-                                if (!string.IsNullOrEmpty(tcpDataString))
+                                if (!_tcpClient.Connected)
                                 {
-                                    MainPage.Log($"灞�鍩熺綉tcp鏁版嵁鎺ユ敹");
-                                    Control.Ins.ConvertReceiveData(arrMsgRec, null);
-
+                                    MainPage.Log("tcp瀹㈡埛绔柇寮�浜嗚繛鎺�...");
+                                    isConnected = false;
+                                    return;
                                 }
-                            }
-                            catch (Exception) { }
-                        }
+                                try
+                                {
+                                    // 瀹氫箟涓�涓�2M鐨勭紦瀛樺尯锛�
+                                    byte[] arrMsgRec = new byte[1024 * 1024 * 2];
+                                    try
+                                    {
+                                        int size = _tcpClient.GetStream().Read(arrMsgRec, 0, arrMsgRec.Length);
+                                    }
+                                    catch (Exception ex)
+                                    {
+                                        isConnected = false;
+                                        MainPage.Log($"灞�鍩熺綉tcp鏁版嵁鎺ユ敹寮傚父:{ex.Message}");
+                                        return;
+                                    }
+                                    var tcpDataString = System.Text.Encoding.UTF8.GetString(arrMsgRec, 0, arrMsgRec.Length);
 
+
+                                    if (!string.IsNullOrEmpty(tcpDataString))
+                                    {
+                                        MainPage.Log($"灞�鍩熺綉tcp鏁版嵁鎺ユ敹");
+                                        Control.Ins.ConvertReceiveData(arrMsgRec, null);
+
+                                    }
+                                }
+                                catch (Exception) { }
+                            }
+                        }catch (Exception ex)
+                        {
+                            MainPage.Log($"tcp ReceiveMessage error :{ex.Message}");
+                        }
                     });
                     //receiveThread.IsBackground = true;
                     receiveThread.Start();

--
Gitblit v1.8.0