Ejemplo n.º 1
0
        public MonitoringJobExecutor(IActionQueue queue, ILogger logger)
        {
            _logger = logger;
            _queue  = queue;

            //не придумала, как безопасно обработать уже существующие в очереди задачи,
            //если они были добавлены до старта обработчика и подписки на событие добавления задачи,
            //поэтому очистка очереди, если она была непустой
            if (_queue.Count > 0)
            {
                _queue.Clear();
            }

            _queue.OnActionAdded += Work;
        }