Rust 1.70 新特性介绍

Rust 1.70 新特性介绍

  • 2023.6.7
  • 版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。

与 C、C++、Go 等其他语言相比,Rust 编程语言的独特方法可以生成更好的代码,并且它所做的妥协更少,还会定期更新,通常每个月更新一次。

Rust 1.70 于 2023 年 6 月 1 日发布,Rust 1.70 默认启用了 Cargo 包管理器的“稀疏”协议,用于从 crates.io 读取索引。此功能已在 Rust 1.68 中进入 stable(稳定)状态,但要与 crates.io 一起使用仍需要进行配置。从 crates.io 索引中获取信息时,用户应该会看到显着提高的性能。

同样在 Rust 1.70 中,两种类型已经稳定用于共享数据的一次性初始化:OnceCell 及其线程安全的对应物 OnceLock。这些可以用于任何不需要立即构建甚至原本不可能的地方,例如全局变量中的非常量数据。

新稳定的 IsTerminal trait 提供了单一方法来确定给定的文件描述符或句柄是否代表了一个终端或 TTY。这是标准化外部特征中存在功能的另一个案例,例如 atty 和 is-terminal,在 Unix 目标平台上使用 C 库的 isatty 函数,在其他地方使用类似功能。

Rust 1.70 版还支持调试信息的命名级别。Rust 的稳定版和 beta 版不再允许不稳定的 test 选项,这使得它们真正只在 nightly 版本中运行。

Rust 1.70 还稳定了许多 API,例如 NonZero*::MIN/MAX 和 BinaryHeap::retain 等。

注1:稀疏协议 Cargo 包管理器的稀疏协议是指从 Rust 1.68 版开始,组件管理器 Cargo 的稀疏注册表协议已经进入稳定阶段,可改善开发者在访问 crates.io 的性能。这个协议可以使 Cargo 在不需要下载所有可用的 crate 时更快地找到所需的 crate,从而提高了构建速度。

猜你喜欢

转载自blog.csdn.net/chszs/article/details/131096999