protected override WorkerState InitialWork() { WorkerState state = null; try { using (StreamReader file = File.OpenText(_jsonConfigPath)) { JsonSerializer serializer = new JsonSerializer(); _hsdMcuReleaseJsonConfig = (HsdMcuAutoReleaseDataModel)serializer.Deserialize(file, typeof(HsdMcuAutoReleaseDataModel)); } if (null != _hsdMcuReleaseJsonConfig && _hsdMcuReleaseJsonConfig.Schedule.AllowToSendAlert) { if (_IsOnSchedure()) { if (!string.IsNullOrEmpty(ServiceName) && !ServiceName.FindProcess()) { _queue = new Queue <WorkerState>(); _queue.Enqueue(new SendAlertNotificationtate(this, _logger)); state = _queue.Dequeue(); } _hsdMcuReleaseJsonConfig.Schedule.LastRun = DateTime.Now.ToString(@"yyyy-MM-dd HH:mm:ss"); File.WriteAllText(_jsonConfigPath, _hsdMcuReleaseJsonConfig.ToString()); } } } catch (Exception ex) { _logger.ErrorFormat(@"Exception caught at McuReleaseProcessMonitorWorkerThread InitialWoek, error = {0}", ex.Message); } return(state); }