public MemoryResourceGovernor(IOptions <MemoryGovernanceOptions> options, ILogger <MemoryResourceGovernor> logger, IMemoryPressureMonitor monitor, ISafeTimerFactory timers) { _options = options?.Value ?? throw new ArgumentNullException(nameof(options)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); _monitor = monitor ?? throw new ArgumentNullException(nameof(monitor)); _timers = timers ?? throw new ArgumentNullException(nameof(timers)); }
public BackgroundTaskManager( IEnumerable <IBackgroundTaskProvider> providers, ILogger <BackgroundTaskManager> logger, ISafeTimerFactory safeTimerFactory) { _safeTimerFactory = safeTimerFactory; _providers = providers; _logger = logger; }
public void StartTasks(IServiceProvider serviceProvider) { if (serviceProvider == null) { throw new ArgumentNullException(nameof(serviceProvider)); } _providers = serviceProvider.GetService <IEnumerable <IBackgroundTaskProvider> >(); _safeTimerFactory = serviceProvider.GetService <ISafeTimerFactory>(); _logger = serviceProvider.GetService <ILogger <BackgroundTaskManager> >(); StartTasks(); }