Expand description
Tools for working with tasks.
This module contains:
-
Context
, which provides contextual data present for every task, including a handle for waking up the task. -
Waker
, a handle for waking up a task. -
LocalKey
, a key for task-local data; you should use thetask_local
macro to set up such keys.
Tasks themselves are generally created by spawning a future onto an
executor. However, you can manually construct a task by
creating your own Context
instance, and polling a future with it.
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.
- Information about the currently-running task.
- A key for task-local data stored in a future’s task.
- A map storing task-local data.
- A
Waker
is a handle for waking up a task by notifying its executor that it is ready to be run.
Traits§
- An unsafe trait for implementing custom memory management for a
Waker
. - A way of waking up a specific task.