gpt4 book ai didi

rust - async_std::sync::Arc 的目的是什么?

转载 作者:行者123 更新时间:2023-12-04 12:50:19 24 4
gpt4 key购买 nike

我明白为什么结构可能会阻塞当前线程,比如 MutexRwLock ,需要重新实现以依赖futures/waker API,但为什么它需要为Arc这样做?

据我了解,没有对标准的操作Arc正在阻止,在最新版本中,async_std::sync::Arc只是 std::sync::Arc 的转口.

这是面向 future 的,以防将来实现 Arc需要依赖阻塞吗?

我应该在异步代码中使用哪一个,为什么?

最佳答案

关键是要简化从 std 的过渡至 async_std越多越好。

description of the crates以。。开始:

This crate provides an async version of std.



它的描述性特征之一是:

Intuitive: Complete parity with the stdlib means you only need to learn APIs once.



至于 blog post that introduced它,它清楚地提到 async_std意味着是 std 的替代品越多越好:

With async-std​, all that’s needed is replace std​ with async_std​, add the prelude​, and sprinkle in a few .await​s



(重点是我的)

鉴于所有这些, async_std 的开发人员是有道理的。会选择从 std 重新导出所有类型不需要适应 async : 用户不用担心类型是否为 async与否,无需担心要做什么 use .

关于rust - async_std::sync::Arc 的目的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59319155/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com