/// <summary> /// Конструктор /// </summary> public CGateClearTableMessage(uint tableIdx, long tableRev, CGateStreamType streamType, string streamName, StreamRegime streamRegime) { TableIdx = tableIdx; TableRev = tableRev; StreamType = streamType; StreamName = streamName; StreamRegime = streamRegime; }
/// <summary> /// Обработка события возможного изменения состояния потока /// </summary> private void StateMightBeenChangedHandler(string streamName, StreamRegime regime) { _logger.Info($"Stream {streamName} state changed to {regime}"); var lockTaken = false; try { _logger.Debug("Trying to lock spinLock"); _spinLock.Enter(ref lockTaken); _logger.Debug("Changing needToCheckSubconnectionsState to true"); } finally { if (lockTaken) { _logger.Debug("SpinLock was taken and"); _spinLock.Exit(); } else { _logger.Debug("Spin lock wasn't taken and needToCheckSubconnectionsState != true"); } } }
protected void RiseStateMightBeenChanged(string streamName, StreamRegime regime) => StateMightBeenChanged?.Invoke(streamName, regime);
/// <summary> /// Конструктор /// </summary> public StreamStateChange(CGateStreamType affectedStreamType, string streamName, StreamRegime streamRegime) { AffectedStreamType = affectedStreamType; StreamName = streamName; StreamRegime = streamRegime; }
/// <summary> /// Конструктор /// </summary> public CGateDataBegin(string streamName, StreamRegime streamRegime) { StreamName = streamName; StreamRegime = streamRegime; }