2 implementations of IProducerConsumerQueue
System.Threading.Tasks.Dataflow (2)
src\runtime\src\libraries\Common\src\System\Collections\Concurrent\MultiProducerMultiConsumerQueue.cs (1)
14internal sealed class MultiProducerMultiConsumerQueue<T> : ConcurrentQueue<T>, IProducerConsumerQueue<T>
src\runtime\src\libraries\Common\src\System\Collections\Concurrent\SingleProducerSingleConsumerQueue.cs (1)
19internal sealed class SingleProducerSingleConsumerQueue<T> : IProducerConsumerQueue<T>
10 references to IProducerConsumerQueue
System.Threading.Tasks.Dataflow (10)
Internal\TargetCore.cs (4)
66private readonly IProducerConsumerQueue<KeyValuePair<TInput, long>> _messages; 125(IProducerConsumerQueue<KeyValuePair<TInput, long>>)new SingleProducerSingleConsumerQueue<KeyValuePair<TInput, long>>() : 126(IProducerConsumerQueue<KeyValuePair<TInput, long>>)new MultiProducerMultiConsumerQueue<KeyValuePair<TInput, long>>(); 772IProducerConsumerQueue<KeyValuePair<TInput, long>> messages = _messages;
src\runtime\src\libraries\Common\src\System\Collections\Concurrent\MultiProducerMultiConsumerQueue.cs (5)
18void IProducerConsumerQueue<T>.Enqueue(T item) { Enqueue(item); } 23bool IProducerConsumerQueue<T>.TryDequeue([MaybeNullWhen(false)] out T result) { return TryDequeue(out result); } 26bool IProducerConsumerQueue<T>.IsEmpty => IsEmpty; 29int IProducerConsumerQueue<T>.Count => Count; 33int IProducerConsumerQueue<T>.GetCountSafe(object syncObj) => Count;
src\runtime\src\libraries\Common\src\System\Collections\Concurrent\SingleProducerSingleConsumerQueue.cs (1)
366int IProducerConsumerQueue<T>.GetCountSafe(object syncObj)