Interface | Description |
---|---|
WaitStrategy<T> |
An interface that defines a Waiting strategy to be employed when an async.Queue is full or empty
|
WaitStrategy.Offerable |
Represents something that may recieve data
|
WaitStrategy.Takeable<T> |
Represents something that may provide data
|
Class | Description |
---|---|
DirectWaitStrategy<T> |
Will try to access the queue once, and return the result directly from the Queue
Effectively the same as calling queue.take() / queue.offer(T val)
|
ExponentialBackofWaitStrategy<T> |
Will attempt to recieve or push data to a Queue, backing off by an exponentially increasing wait time
until successful.
|
NoWaitRetry<T> |
Repeatedly retry to take or offer element to Queue if full or data unavailable
|
SpinWait<T> |
Repeatedly retry to take or offer element to Queue if full or data unavailable,
with a wait of 1 nano second between retries
|
YieldWait<T> |
Repeatedly retry to take or offer element to Queue if full or data unavailable, calling Thread.yield in between attempts
|