Rust异步编程基础
理解async/await语法、Future特型和基本异步运行时 · 难度:入门 · +15XP
异步编程概念
Rust的异步编程基于Future特型和async/await语法。异步函数返回一个Future,需要运行时(如tokio)来执行。
async/await语法
use std::future::Future;
async fn fetch_data() -> String {
// 模拟异步操作
String::from("数据")
}
async fn process() {
let data = fetch_data().await;
println!("获取到: {}", data);
}
Future特型
| 方法 | 说明 |
|---|---|
| poll | 轮询Future是否完成 |
| await | 等待Future完成 |
运行异步代码
use futures::executor::block_on;
fn main() {
block_on(process());
}
练习提示:编写两个异步函数,一个等待另一个,并观察执行顺序。