private void UpdateTimer() { lock (_syncObj) { if (!_checkForExpiredItems) { if (_expirationTimer != null) { _expirationTimer.Dispose(); _expirationTimer = null; } } else { var timeSpan = _expirationTimerInterval; if (_expirationTimer is null) { // Always create timers with infinite, then update them later so we always have a populated timer field _expirationTimer = new Catel.Threading.Timer(OnTimerElapsed, null, Timeout.Infinite, Timeout.Infinite); } _expirationTimer.Change(timeSpan, timeSpan); } } }
private void UpdateTimer() { lock (_syncObj) { if (!_checkForExpiredItems) { if (_expirationTimer != null) { _expirationTimer.Dispose(); _expirationTimer = null; } } else { var timeSpan = _expirationTimerInterval; if (_expirationTimer == null) { _expirationTimer = new Catel.Threading.Timer(OnTimerElapsed, null, timeSpan, timeSpan); } else { _expirationTimer.Change(timeSpan, timeSpan); } } } }