public void ReceiveMessage() { while (true) { string message = ""; try { byte[] data = new byte[64]; StringBuilder builder = new StringBuilder(); int bytes = 0; do { bytes = stream.Read(data, 0, data.Length); builder.Append(Encoding.Unicode.GetString(data, 0, bytes)); }while (stream.DataAvailable); message = builder.ToString(); WorkerResultEventArgs e = new WorkerResultEventArgs(message); OnFinished(e); } catch (Exception e) { Connector.getInstance().DisconnectReboot(); } } }
protected void OnFinished(WorkerResultEventArgs e) { if (Finished == null) { return; } try { Application.Current.Dispatcher.Invoke(Finished, new object[] { this, e }); } catch { Console.WriteLine("onFinished error"); } }