AccessQueueService/AccessQueuePlayground/Services/AccessQueueBackgroundServic...

26 lines
769 B
C#

using System.Threading;
using System.Threading.Tasks;
using Microsoft.Extensions.Hosting;
namespace AccessQueuePlayground.Services
{
public class AccessQueueBackgroundService : BackgroundService
{
private readonly IAccessQueueManager _accessQueueManager;
public AccessQueueBackgroundService(IAccessQueueManager accessQueueManager)
{
_accessQueueManager = accessQueueManager;
}
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
{
while (!stoppingToken.IsCancellationRequested)
{
await _accessQueueManager.RecalculateStatus();
await Task.Delay(1000, stoppingToken); // Run every second
}
}
}
}