protected async override Task ExecuteAsync(CancellationToken stoppingToken) { while (!stoppingToken.IsCancellationRequested) { if (delay.CanStart) { using (var scope = services.CreateScope()) { InitializeScope(scope.ServiceProvider); senderService.FetchAddress(); await SendOldNotSentSchedules(); var secondsToNextMinute = 60 - DateTime.Now.Second; await Task.Delay(1000 *secondsToNextMinute, stoppingToken); } } else { await Task.Delay(1000 * 5, stoppingToken); } } }