Module polkadot_node_subsystem::gen::futures::task
source · Expand description
Tools for working with tasks.
This module contains:
Spawn, a trait for spawning new tasks.Context, a context of an asynchronous task, including a handle for waking up the task.Waker, a handle for waking up a task.
The remaining types and traits in the module are used for implementing executors or dealing with synchronization issues around task wakeup.
Structs
- A synchronization primitive for task wakeup.
- The context of an asynchronous task.
- A custom trait object for polling futures, roughly akin to
Box<dyn Future<Output = T> + Send + 'a>. - A custom trait object for polling futures, roughly akin to
Box<dyn Future<Output = T> + 'a>. - A
RawWakerallows the implementor of a task executor to create aWakerwhich provides customized wakeup behavior. - A virtual function pointer table (vtable) that specifies the behavior of a
RawWaker. - An error that occurred during spawning.
- A
Wakeris a handle for waking up a task by notifying its executor that it is ready to be run. - A
Wakerthat is only valid for a given lifetime.
Enums
- Indicates whether a value is available or if the current task has been scheduled to receive a wakeup instead.
Traits
- A way of waking up a specific task.
- Extension trait for
LocalSpawn. - The
Spawntrait allows for pushing futures onto an executor that will run them to completion. - Extension trait for
Spawn. - A custom implementation of a future trait object for
FutureObj, providing a vtable with drop support.