private void OnApplicationStopping() { _shutdownStarted = DateTime.UtcNow; _state.NotifyStopRequested(); while (_state.RequestsInProgress > 0 && DateTime.UtcNow < _shutdownStarted.Add(_options.ShutdownTimeout)) { _logger.LogInformation($"{DateTime.Now.ToString("HH:mm:ss")} Application stopping, requests in progress: {_state.RequestsInProgress}"); Thread.Sleep(1000); } if (_state.RequestsInProgress > 0) { _logger.LogCritical($"{DateTime.Now.ToString("HH:mm:ss")} Application stopped, requests in progress: {_state.RequestsInProgress}"); } else { _logger.LogInformation($"{DateTime.Now.ToString("HH:mm:ss")} Application stopped, requests in progress: {_state.RequestsInProgress}"); } }
private void OnApplicationStopping() { _shutdownStarted = DateTime.UtcNow; _state.NotifyStopRequested(); }