MeiRiYiCheng_1_old/YBDevice.WorkerService/Worker.cs

35 lines
1.2 KiB
C#
Raw Permalink Normal View History

2025-07-16 17:14:38 +08:00
using Furion.TaskScheduler;
using YBDevice.WorkerService.Services;
namespace YBDevice.WorkerService
{
public class Worker : BackgroundService
{
private readonly ILogger<Worker> _logger;
private readonly IServiceScopeFactory _scopeFactory;
public Worker(ILogger<Worker> logger, IServiceScopeFactory scopeFactory)
{
_logger = logger;
_scopeFactory = scopeFactory;
}
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
{
while (!stoppingToken.IsCancellationRequested)
{
//ÿ<><C3BF>10<31><EFBFBD><E3B7A2>,<2C>ӳ<EFBFBD>10<31><30>
await SpareTime.DoAsync("10 00 10 * * *", async () =>
{
using (var scope = _scopeFactory.CreateScope())
{
var services = scope.ServiceProvider;
var spService = services.GetService<IMessageService>();
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
await spService.GetMessageListAsync();
}
}, stoppingToken, CronFormat.IncludeSeconds);
}
}
}
}