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.
Re-exports§
pub use core::task::Context;pub use core::task::Poll;pub use core::task::RawWaker;pub use core::task::RawWakerVTable;pub use core::task::Waker;
Structs§
- Atomic
Waker  - A synchronization primitive for task wakeup.
 - Future
Obj  - A custom trait object for polling futures, roughly akin to
Box<dyn Future<Output = T> + Send + 'a>. - Local
Future Obj  - A custom trait object for polling futures, roughly akin to
Box<dyn Future<Output = T> + 'a>. - Spawn
Error  - An error that occurred during spawning.
 - Waker
Ref  - A 
Wakerthat is only valid for a given lifetime. 
Traits§
- ArcWake
 - A way of waking up a specific task.
 - Local
Spawn  - The 
LocalSpawnis similar toSpawn, but allows spawning futures that don’t implementSend. - Local
Spawn Ext  - Extension trait for 
LocalSpawn. - Spawn
 - The 
Spawntrait allows for pushing futures onto an executor that will run them to completion. - Spawn
Ext  - Extension trait for 
Spawn. - Unsafe
Future Obj  - A custom implementation of a future trait object for 
FutureObj, providing a vtable with drop support. 
Functions§
- noop_
waker  - Create a new 
Wakerwhich does nothing whenwake()is called on it. - noop_
waker_ ref  - Get a static reference to a 
Wakerwhich does nothing whenwake()is called on it. - waker
 - Creates a 
Wakerfrom anArc<impl ArcWake>. - waker_
ref  - Creates a reference to a 
Wakerfrom a reference toArc<impl ArcWake>.