Class BlockableChannel
Package
Multi-producer-multi-consumer (MPMC) channel.
This is a channel that can be used to send data between threads. It is thread safe and can be used by multiple threads at the same time.
Additionally, the channel can be put into a blocking mode, which will cause all calls to Receive to block until the channel is unblocked.
Inner Types
Public Methods
Public Variables
allReceiversBlocked
True if blocking and all receivers are waiting for unblocking.
Public
isBlocked
If true, all calls to Receive will block until this property is set to false.
Public
isEmpty
True if the queue is empty.
Public
numReceivers
Public
Private/Protected Members
blocked
Private
isStarving
Private
lockObj
Private
Readonly
queue
Private
starving
Private
waitingReceivers
Private