using Furion.DatabaseAccessor;
|
using System.Data;
|
|
namespace Admin.NET.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;
|
}
|
|
// Æô¶¯
|
public override Task StartAsync(CancellationToken cancellationToken)
|
{
|
return base.StartAsync(cancellationToken);
|
}
|
// Ö´ÐÐÂß¼
|
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
|
{
|
while (!stoppingToken.IsCancellationRequested)
|
{
|
using (var scope = _scopeFactory.CreateScope())
|
{
|
var services = scope.ServiceProvider;
|
Console.WriteLine(DateTime.Now);
|
}
|
//Ö´Ðеķ½·¨
|
await Task.Delay(2000, stoppingToken);
|
}
|
}
|
// ֹͣ
|
public override Task StopAsync(CancellationToken cancellationToken)
|
{
|
return base.StopAsync(cancellationToken);
|
}
|
|
}
|
}
|