20 releases (stable)

1.9.0 Feb 22, 2024
1.8.0 Nov 24, 2023
1.6.0 Oct 17, 2023
1.5.1 Apr 7, 2023
0.1.0 Jul 1, 2019

#8 in Asynchronous

Download history 323522/week @ 2023-12-07 301665/week @ 2023-12-14 200123/week @ 2023-12-21 220973/week @ 2023-12-28 312025/week @ 2024-01-04 322265/week @ 2024-01-11 391014/week @ 2024-01-18 473345/week @ 2024-01-25 381861/week @ 2024-02-01 351405/week @ 2024-02-08 347546/week @ 2024-02-15 372971/week @ 2024-02-22 377985/week @ 2024-02-29 363277/week @ 2024-03-07 372771/week @ 2024-03-14 322139/week @ 2024-03-21

1,503,878 downloads per month
Used in 3,877 crates (78 directly)

Apache-2.0 OR MIT

33KB
507 lines

async-executor

Build License Cargo Documentation

Async executors.

This crate provides two reference executors that trade performance for functionality. They should be considered reference executors that are "good enough" for most use cases. For more specialized use cases, consider writing your own executor on top of async-task.

Examples

use async_executor::Executor;
use futures_lite::future;

// Create a new executor.
let ex = Executor::new();

// Spawn a task.
let task = ex.spawn(async {
    println!("Hello world");
});

// Run the executor until the task completes.
future::block_on(ex.run(task));

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~1MB
~15K SLoC