26 lines
744 B
C#
Raw Normal View History

2025-06-04 09:42:48 +08:00
using Microsoft.Extensions.Hosting;
namespace Seyounth.Auto.Hs.Runtime.Plc;
public class PlcBackgroundService(IPlcService plc) : BackgroundService
{
public override async Task StartAsync(CancellationToken cancellationToken)
{
await plc.StartAsync();
await base.StartAsync(cancellationToken);
}
2025-06-04 09:42:48 +08:00
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
{
while (!stoppingToken.IsCancellationRequested)
{
await plc.QueryWarningInfo();
await Task.Delay(50, stoppingToken);
}
}
public override Task StopAsync(CancellationToken cancellationToken)
{
plc.StopAsync();
return base.StopAsync(cancellationToken);
}
2025-06-04 09:42:48 +08:00
}