ManualEvent

A manually triggered cross-task event.

Note: the ownership can be shared between multiple fibers and threads.

Members

Functions

emit
void emit()

Emits the signal, waking up all owners of the signal.

wait
void wait()

Acquires ownership and waits until the signal is emitted.

wait
int wait(int reference_emit_count)

Acquires ownership and waits until the emit count differs from the given one.

wait
int wait(Duration timeout, int reference_emit_count)

Acquires ownership and waits until the emit count differs from the given one or until a timeout is reached.

waitUninterruptible
int waitUninterruptible(int reference_emit_count)
int waitUninterruptible(Duration timeout, int reference_emit_count)

Same as wait, but defers throwing any InterruptException.

Properties

emitCount
int emitCount [@property getter]

A counter that is increased with every emit() call

Meta