private void MakesureConnection(IPLCCommunicator communicator) { switch (communicator.Status) { case CommunicationStatus.Connected: { break; } case CommunicationStatus.NotConnected: { communicator.ConnectServer(); break; } case CommunicationStatus.Failed: { break; } case CommunicationStatus.Connecting: case CommunicationStatus.Disconnecting: { break; } } }
protected virtual void Dispose(bool disposing) { if (!_isDisposed) { _isDisposed = true; _mre?.SafeSet(); if (_loopThread != null) { try { _loopThread.Abort(); } catch { } _loopThread = null; } if (Communicator != null) { Communicator.Dispose(); Communicator = null; } foreach (var kv in Variables) { kv.Value.Communicator = null; } _mre.SafeDispose(); _mre = null; } }
public ReadLoop(PLCClient pLCDevice, IPLCCommunicator comm, string thread) { PLC = pLCDevice; Communicator = comm; ThreadName = thread; }