Skip to main content

Module executor

Module executor 

Source
Expand description

Single-owner coroutine execution with interrupt-safe wake publication.

Futures are polled and destroyed only by the owner thread. Wakers may cross CPUs and may run in hard interrupt context; their operations only touch atomics, publish intrusive nodes, and invoke a direct thread wake header. Zero-reference allocations are freed immediately in task context; hard IRQ transfers only the typed coroutine header to the task-work reaper.

Structs§

CoroutineHeader
Pinned header addressed directly by the coroutine’s custom raw waker.
CoroutineId
Generation-bearing identity of one coroutine owned by a local executor.
ExecutorParkCondition
Borrowed executor predicate for one OS scheduler park attempt.
LocalExecutor
A single-thread executor whose owner may migrate between CPUs.
ParkToken
Proof that the owner completed the executor-side park handshake.
PollBatch
Outcome of one bounded executor turn.

Enums§

BlockOnError
Error returned when a runtime-local future misses its monotonic deadline.

Constants§

DEFAULT_POLL_BATCH
Maximum number of futures polled by one executor turn.

Functions§

block_on
Polls a future to completion on the calling runtime scheduler thread.
block_on_timeout
Polls a future until completion or a relative monotonic timeout.
wake_waker_sync
Wakes a coroutine with Linux WF_SYNC scheduling semantics.