private void StopProcessing() { if (monitor == null) { return; } monitor.Refreshed -= MonitorOnRefreshed; monitor.Dispose(); monitor = null; }
public ResourceMonitoringService(ILogger <ResourceMonitoringService> logger, IConfiguration config, ISystemUsageMonitor monitor) { var performance = config.GetSection("performance"); if (performance != null) { var scan = performance.GetValue <int>("scan"); if (scan > 0) { scanTime = TimeSpan.FromMinutes(scan); } } this.logger = logger ?? throw new ArgumentNullException(nameof(logger)); this.monitor = monitor ?? throw new ArgumentNullException(nameof(monitor)); logger.LogDebug("Will scan every {0}", scanTime); }