atask
atask is a flexible task model for building async executors.
First, create a queue to hold the scheduled tasks.
let = unbounded;
A task is spawned using a spawn* function.
let future = async ;
let schedule = move |runnable| sender.send.unwrap;
let = spawn;
runnable.schedule;
Finally, the spawned tasks must be polled.
for runnable in receiver
Differences from async-task
async-task is a very similar library with a few key differences.
The primary differences are:
- Cancelling or detaching a task does not consume the handle.
- Tasks are detached rather than consumed on dropping the handle.
Cargo features
std(default): Enables the use of the standard library and enables thespawn_localmessages.