FiberQueueImpl

Implementation of the fiber queue.

A fiber queue supports two basic operations: suspend, which causes a fiber to stop execution and wait in the queue, and resume, which wakes up one (or more) suspended fibers.

As the name suggests, the queue maintains a strict FIFO order.

This should not, typically, be used directly by client code. Instead, it is a helper for developing synchronization objects.

Postblit

this(this)
this(this)
Undocumented in source.

Members

Functions

resumeAll
void resumeAll()

Resumes execution of all pending fibers

resumeOne
FiberHandle resumeOne(bool immediate)

Resumes execution of one fiber.

suspend
void suspend(Timeout timeout)

Suspends the current fiber until it is awoken.

Properties

empty
bool empty [@property getter]

Reports whether there are pending fibers in the queue.

Parameters

Volatile

Sets whether suspend is supported in the case where the fiber queue itself goes out of context before all fibers wake up.

Meta