private void checkState() { while (true) { Thread.Sleep(1000); if (SimpleTcp.TcpClient.Connected == false) { try { ControlPadStatus[this.ControlPadId] = Statu.Reconnecting; SimpleTcp.TcpClient.Close(); SimpleTcp.Connect(IP, Port); ControlPadStatus[this.ControlPadId] = Statu.Connected; SimpleTcp.DataReceived += (sender, msg) => { Decode(msg.Data); }; IsConnection = true; } catch { //IsConnection = false; //ControlPadStatus[this.ControlPadId] = Statu.Notconnected; //App.Current.Dispatcher.Invoke(()=> //{ // if (User.GetInstance().IsDebugMode) // { // App.Current.MainWindow.Title = $"{App.AppTitle}(调试模式) RecvData:"; // } //}); } } } }
/// <summary> /// 发送数据 /// </summary> /// <param name="data">要发送的数据</param> public void SendData(byte[] data) { if (SimpleTcp != null) { try { SimpleTcp.Write(data); } catch (Exception) { IsConnection = false; } } }
private void checkState() { while (true) { Thread.Sleep(40000); if (SimpleTcp.TcpClient.Connected == false) { try { SimpleTcp.TcpClient.Close(); SimpleTcp.Connect(IP, Port); SimpleTcp.DataReceived += (sender, msg) => { Decode(msg.Data); }; IsConnection = true; } catch { IsConnection = false; } } } }