private void ConnectServer() { var ns = new NetStream(ConnectTcp()); _transfering?.Dispose(); _transfering = new Transfering(ns, ns, BufferSize); _transfering.ConnectionStabilised = OnConnectionStabilised; _transfering.ConnectionError = ex => { lock (_transfering) { // for single raction _transfering.ConnectionError = null; _sendSync.Lock(); Console.WriteLine($"Connection ERROR {ex.Message}"); OnConnectionError(ex); _connSync.Pulse(); } }; _transfering.StartReceiver(data => OTcpServer.DataHandler(_evaluator, data)); _sendSync.Unlock(); }
private void ConnectServer() { var ns = new NetStream(ConnectTcp()); _transfering?.Dispose(); _transfering = new Transfering(ns, ns, BufferSize); var isReconnected = false; _transfering.ConnectionStabilised = OnConnectionStabilised + new Action(() => { if (isReconnected) { _symbolTable = new SymbolTable(_serverQueryInterfaceProxy.GetIndexedSymbols()); } else { isReconnected = true; } }); _transfering.ConnectionError = ex => { lock (_transfering) { // for single raction _transfering.ConnectionError = null; _sendSync.Lock(); Console.WriteLine($"Connection ERROR {ex.Message}"); OnConnectionError(ex); _connSync.Pulse(); } }; _transfering.StartReceiver(data => OTcpServer.DataHandler(_evaluator, data, _symbolTable)); _sendSync.Unlock(); }