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