rust之async

 
async/.await可以让出当前线程的控制权而不是阻塞,当前线程等待某个操作完成时允许其他代码执行。

有两种使用方式:async fn和async,每个返回执行future特性的值。

 1 // `foo()` returns a type that implements `Future<Output = u8>`.
 2 // `foo().await` will result in a value of type `u8`.
 3 async fn foo() -> u8 { 5 }
 4 
 5 fn bar() -> impl Future<Output = u8> {
 6     // This `async` block results in a type that implements
 7     // `Future<Output = u8>`.
 8     async {
 9         let x: u8 = foo().await;
10         x + 5
11     }
12 }

async生命周期

async move

Asynchronous Programming in Rust

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章