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 RawWaker
allows the implementor of a task executor to create a Waker
which provides customized wakeup behavior.
A virtual function pointer table (vtable) that specifies the behavior
of a RawWaker
.
An error that occurred during spawning.
A Waker
is a handle for waking up a task by notifying its executor that it
is ready to be run.
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.
The LocalSpawn
is similar to Spawn
, but allows spawning futures
that don’t implement Send
.
Extension trait for LocalSpawn
.
The Spawn
trait 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.