async-rs

async-std

Async version of the Rust standard library
Under Other
By async-rs

rust async async-await async-std async-rust

async-std


Async version of the Rust standard library




















API Docs

|

Book

|

Releases

|

Contributing


This crate provides an async version of [std]. It provides all the interfaces
you are used to, but in an async version and ready for Rust's async/await
syntax.


Features

Examples

```rust
use async_std::task;


async fn say_hello() {
println!("Hello, world!");
}


fn main() {
task::block_on(say_hello())
}
```


More examples, including networking and file access, can be found in our
[examples] directory and in our documentation.


Philosophy

We believe Async Rust should be as easy to pick up as Sync Rust. We also believe
that the best API is the one you already know. And finally, we believe that
providing an asynchronous counterpart to the standard library is the best way
stdlib provides a reliable basis for both performance and productivity.


Async-std is the embodiment of that vision. It combines single-allocation task
creation, with an adaptive lock-free executor, threadpool and network driver to
create a smooth system that processes work at a high pace with low latency,
using Rust's familiar stdlib API.


Installation

With cargo-edit installed run:


sh
$ cargo add async-std


We also provide a set of "unstable" features with async-std. See the features
documentation on how to enable them.


Ecosystem

License


Licensed under either of Apache License, Version
2.0 or MIT license at your option.




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