internal ConcurrentExclusiveTaskScheduler(ConcurrentExclusiveSchedulerPair pair, int maxConcurrencyLevel, ConcurrentExclusiveSchedulerPair.ProcessingMode processingMode) { this.m_pair = pair; this.m_maxConcurrencyLevel = maxConcurrencyLevel; this.m_processingMode = processingMode; this.m_tasks = processingMode == ConcurrentExclusiveSchedulerPair.ProcessingMode.ProcessingExclusiveTask ? (IProducerConsumerQueue <Task>) new SingleProducerSingleConsumerQueue <Task>() : (IProducerConsumerQueue <Task>) new MultiProducerMultiConsumerQueue <Task>(); }
// Token: 0x06006EE3 RID: 28387 RVA: 0x0017DBAC File Offset: 0x0017BDAC internal ConcurrentExclusiveTaskScheduler(ConcurrentExclusiveSchedulerPair pair, int maxConcurrencyLevel, ConcurrentExclusiveSchedulerPair.ProcessingMode processingMode) { this.m_pair = pair; this.m_maxConcurrencyLevel = maxConcurrencyLevel; this.m_processingMode = processingMode; IProducerConsumerQueue <Task> tasks; if (processingMode != ConcurrentExclusiveSchedulerPair.ProcessingMode.ProcessingExclusiveTask) { IProducerConsumerQueue <Task> producerConsumerQueue = new MultiProducerMultiConsumerQueue <Task>(); tasks = producerConsumerQueue; } else { IProducerConsumerQueue <Task> producerConsumerQueue = new SingleProducerSingleConsumerQueue <Task>(); tasks = producerConsumerQueue; } this.m_tasks = tasks; }