ITaskQueue
Public / Methods
Flush
Blocks the calling thread until all queued tasks have finished.
- PoolingException
-
If a call to TaskResultVoid.Finish resp. TaskResult.Finish on a pending task has thrown a PoolingException
Pop
Pops the next output from the task queue, waiting for a pending task to finish, if necessary.
This method should only be called when IsEmpty returns false
.
- PoolingException
-
If the task has thrown an exception.
Push
Pushes the given input data to the task queue.
This method should only be called when IsFull returns false
.
Public / Attributes
IsEmpty
Checks if the task queue is currently empty, i.e. there is no output data object ready and there are no pending task invocations.
Calling Pop on an empty queue will never block and will always return the default output value.
IsFull
Checks if the task queue is currently full, i.e. the maximum number of pending task invocations has been reached.
Calling Push on a full queue will exceed the maximum number of pending task invocations, but will otherwise not have any adverse effects.