using Microsoft.Extensions.Hosting; namespace Seyounth.Auto.Hs.Runtime; public class HsBackgroundService(IHsAutoRuntime hs) : BackgroundService { public override async Task StartAsync(CancellationToken cancellationToken) { await hs.RunAsync(); await base.StartAsync(cancellationToken); } protected override async Task ExecuteAsync(CancellationToken stoppingToken) { while (!stoppingToken.IsCancellationRequested) { await Task.Delay(1000, stoppingToken); } } public override async Task StopAsync(CancellationToken cancellationToken) { await hs.StopAsync(); await base.StopAsync(cancellationToken); } }