public void Run() { if (string.IsNullOrWhiteSpace(_comHandle)) { return; } string?errorToReport = null; if (_ipcConnection.IsReady) { _ipcConnection.Start(_comHandle); if (!_ipcConnection.IsReady) { errorToReport = _ipcConnection.ErrorMessage; } } else { errorToReport = _ipcConnection.ErrorMessage; } if (!string.IsNullOrWhiteSpace(errorToReport)) { _logger.Warn("Error on Start Kill Watch: {Error}", errorToReport); return; } _ipcConnection.OnMessage <KillNode>() .Subscribe(_ => _system.Terminate(), exception => _logger.Error(exception, "Error On Killwatch Message Recieve")); }