用IntoFuture into 到 Future--改善Rust异步的人体工程学
一篇介绍 IntoFuture trait的博文。
tokio::time::sleep(Duration::from_secs(10)).await;// 想象一下上一行代码可以简化成下面这样Duration::from_secs(10).await;
futures::future::join_all((fut1, fut2)).await;// 想象一下上一行代码可以简化成下面这样(fut1, fut2).await;
futures::future::join_all(vec![fut1, fut2]).await;// 想象一下上一行代码可以简化成下面这样vec![fut1, fut2].awaitlet response = reqwest::Client::new()
.post("https://domain/api/create")
.header("key", "value")
.json(...)
.send()// ^^^^^^^
.await?;let response = reqwest::Client::new()
.post("https://domain/api/create")
.header("key", "value")
.json(...)// .send() 没有了这个send是不是会更好呢?// ^^^^^^^
.await?;
好消息是:自2021年12月以来,实现这些模式的功能已经在Rust的nightly版上可用,并最终走向稳定。
Blog: https://refaktory.net/blog/posts/into-the-future-with-intofuture-improving-rust-async-ergonomics
本月Rust操作系统开发生态进展
This Month in Rust OSDev: https://rust-osdev.com/this-month/2022-05/
本月Rust游戏开发生态进展
新一期的 Rust 游戏开发本月进展已经发布:
This Month in Rust GameDev: https://gamedev.rs/news/034/
This Week in Rust 446
新一期的 Rust 周报速递发布,快来看看有哪些内容你曾经关注过 :)
This Week in Rust 446: https://this-week-in-rust.org/blog/2022/06/08/this-week-in-rust-446/
社区学习交流平台订阅:
- Rust.cc 论坛: 支持 rss
- 微信公众号:Rust 语言中文社区