namespace Hg.Complaint.WebApi.workers { internal class LiveDataWorker : BackgroundService { private readonly IServiceProvider _serviceProvider; public LiveDataWorker(IServiceProvider serviceProvider) { _serviceProvider = serviceProvider; } protected override async Task ExecuteAsync(CancellationToken stoppingToken) { var scope = _serviceProvider.CreateScope(); var liveAuditDomain = scope.ServiceProvider.GetRequiredService(); while (true) { try { Log.Information("直播数据分析任务"); await liveAuditDomain.SyncLiveData(); } catch (Exception ex) { Log.Error(ex, "直播数据分析任务报错!"); } await Task.Delay(5 * 60 * 1000, stoppingToken); } } } }