Yevgeniy Ulyantsev 45232075f4 1
2025-07-17 17:31:08 +03:00

33 lines
1.0 KiB
C#

using Services.Games;
using Services.Tickets;
namespace WorkerService1;
public class Worker : BackgroundService
{
private readonly ILogger<Worker> _logger;
private readonly IServiceScopeFactory _serviceScopeFactory;
public Worker(ILogger<Worker> logger, IServiceScopeFactory serviceScopeFactory)
{
_logger = logger;
_serviceScopeFactory = serviceScopeFactory;
}
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
{
using (var scope = _serviceScopeFactory.CreateScope())
{
var ticketService = scope.ServiceProvider.GetRequiredService<ITicketService>();
for (int i = 0; i < 1000000; i++)
{
var ticket = await ticketService.GetNewTicket();
}
var gameService = scope.ServiceProvider.GetRequiredService<IGameService>();
var winNumbers = gameService.GetWinNumbers();
var winners = await gameService.GetWinnersTickets(winNumbers);
}
}
}