net6.0 Ready to test
This commit is contained in:
@ -11,27 +11,32 @@ namespace APCViewer.HostedService;
|
||||
public class TimedHostedService : IHostedService
|
||||
{
|
||||
|
||||
private readonly Timer _APCDataTimer;
|
||||
private readonly Timer _EDADataTimer;
|
||||
private readonly Timer _EAFLogDataTimer;
|
||||
private readonly int _ExecutionCount;
|
||||
private readonly List<Timer> _Timers;
|
||||
private readonly Timer _APCDataTimer;
|
||||
private readonly Timer _EDADataTimer;
|
||||
private readonly Serilog.ILogger _Log;
|
||||
private readonly Background _Background;
|
||||
private readonly Timer _EAFLogDataTimer;
|
||||
private readonly IsEnvironment _IsEnvironment;
|
||||
private readonly IBackground _BackgroundMethods;
|
||||
|
||||
public TimedHostedService(IsEnvironment isEnvironment, Background background)
|
||||
{
|
||||
_Timers = new();
|
||||
_ExecutionCount = 0;
|
||||
_Background = background;
|
||||
_IsEnvironment = isEnvironment;
|
||||
_BackgroundMethods = background;
|
||||
_Log = Serilog.Log.ForContext<TimedHostedService>();
|
||||
_APCDataTimer = new Timer(APCDataCallback, null, Timeout.Infinite, Timeout.Infinite);
|
||||
_EAFLogDataTimer = new Timer(EAFLogDataCallback, null, Timeout.Infinite, Timeout.Infinite);
|
||||
_EDADataTimer = new Timer(EDADataCallback, null, Timeout.Infinite, Timeout.Infinite);
|
||||
_EAFLogDataTimer = new Timer(EAFLogDataCallback, null, Timeout.Infinite, Timeout.Infinite);
|
||||
_Timers = new()
|
||||
{
|
||||
_APCDataTimer,
|
||||
_EDADataTimer,
|
||||
_EAFLogDataTimer
|
||||
};
|
||||
}
|
||||
|
||||
public Task StartAsync(CancellationToken stoppingToken)
|
||||
@ -49,25 +54,19 @@ public class TimedHostedService : IHostedService
|
||||
else if (_IsEnvironment.Staging)
|
||||
{
|
||||
_ = _APCDataTimer.Change(milliSeconds, Timeout.Infinite);
|
||||
_Timers.Add(_APCDataTimer);
|
||||
milliSeconds += 2000;
|
||||
_ = _EAFLogDataTimer.Change(milliSeconds, Timeout.Infinite);
|
||||
_Timers.Add(_EAFLogDataTimer);
|
||||
milliSeconds += 2000;
|
||||
_ = _EDADataTimer.Change(milliSeconds, Timeout.Infinite);
|
||||
_Timers.Add(_EDADataTimer);
|
||||
milliSeconds += 2000;
|
||||
}
|
||||
else if (_IsEnvironment.Production)
|
||||
{
|
||||
_ = _APCDataTimer.Change(milliSeconds, Timeout.Infinite);
|
||||
_Timers.Add(_APCDataTimer);
|
||||
milliSeconds += 2000;
|
||||
_ = _EAFLogDataTimer.Change(milliSeconds, Timeout.Infinite);
|
||||
_Timers.Add(_EAFLogDataTimer);
|
||||
milliSeconds += 2000;
|
||||
_ = _EDADataTimer.Change(milliSeconds, Timeout.Infinite);
|
||||
_Timers.Add(_EDADataTimer);
|
||||
milliSeconds += 2000;
|
||||
}
|
||||
else
|
||||
@ -82,6 +81,8 @@ public class TimedHostedService : IHostedService
|
||||
using (LogContext.PushProperty("MethodName", methodName))
|
||||
{
|
||||
_Log.Info(string.Concat("Timed Hosted Service: ", _IsEnvironment.Profile, ":", Environment.ProcessId, " is stopping."));
|
||||
foreach (Timer timer in _Timers)
|
||||
_ = timer.Change(Timeout.Infinite, 0);
|
||||
_BackgroundMethods.Stop(immediate: true);
|
||||
for (short i = 0; i < short.MaxValue; i++)
|
||||
{
|
||||
|
Reference in New Issue
Block a user