
Program.cs
Код: Выделить всё
IHost host = Host.CreateDefaultBuilder(args)
.ConfigureServices(services => {
services.AddHostedService();
})
.Build();
host.RunAsync();
while (true) {
Thread.Sleep(5000);
await host.StopAsync();
Thread.Sleep(5000);
await host.StartAsync();
}
Код: Выделить всё
public class TestWorker : BackgroundService {
private readonly ILogger _logger;
public TestWorker(ILogger logger) {
_logger = logger;
}
protected override async Task ExecuteAsync(CancellationToken stoppingToken) {
while (!stoppingToken.IsCancellationRequested) {
_logger.LogInformation("Worker running at: {time}", DateTimeOffset.Now);
await Task.Delay(1000, stoppingToken);
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/793 ... ancelledex
Мобильная версия