public TaskManager() { cts = new CancellationTokenSource(); this.manager = new ConcurrentExclusiveInterleave(cts.Token); instance = this; }
/// <summary>Initializes the scheduler.</summary> /// <param name="interleave">The parent interleave.</param> /// <param name="tasks">The queue to store queued tasks into.</param> internal ConcurrentExclusiveTaskScheduler(ConcurrentExclusiveInterleave interleave, Queue <Task> tasks, int maximumConcurrencyLevel) { _interleave = interleave ?? throw new ArgumentNullException(nameof(interleave)); _maximumConcurrencyLevel = maximumConcurrencyLevel; Tasks = tasks ?? throw new ArgumentNullException(nameof(tasks)); }