/// <summary> /// Initializes the debug view. /// </summary> /// <param name="interleave">The interleave being debugged.</param> public ConcurrentExclusiveInterleaveDebugView(ConcurrentExclusiveInterleave interleave) { if (interleave == null) { throw new ArgumentNullException("interleave"); } this._interleave = interleave; }
/// <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) { if (interleave == null) { throw new ArgumentNullException("interleave"); } if (tasks == null) { throw new ArgumentNullException("tasks"); } this._interleave = interleave; this._maximumConcurrencyLevel = maximumConcurrencyLevel; this.Tasks = tasks; }