Rust 1.67 发布

Rust 团队于近日发布了 Rust 1.67.0 新版本,1.67.0 稳定版中的主要更新内容如下:

#[must_use]async fn 有效

带有 #[must_use] 注释的 async 函数现在将该属性应用于返回的 impl Future 的输出。Future 特性本身已经带有 #[must_use] 注释,所以所有实现 Future 的类型都自动 #[must_use]

在 1.67 版本中,如果输出没有以某种方式使用,编译器现在会发出警告。

#[must_use]
async fn bar() -> u32 { 0 }

async fn caller() {
    bar().await;
}

warning: unused output of future returned by `bar` that must be used
 --> src/lib.rs:5:5
  |
5 |     bar().await;
  |     ^^^^^^^^^^^
  |
  = note: `#[warn(unused_must_use)]` on by default

std::sync::mpsc 实现更新

Rust 的标准库从 1.0 之前就有一个多生产者、单消费者的通道,但在这个版本中,实现被换成了基于 crossbeam-channel。这个版本不包含 API 的变化,但新的实现修复了一些错误,提高了实现的性能和可维护性。

从这个版本开始,用户不应该注意到行为上的任何显著变化。

稳定的 API

  • [{integer}::checked_ilog]()
  • [{integer}::checked_ilog2]()
  • [{integer}::checked_ilog10]()
  • [{integer}::ilog]()
  • [{integer}::ilog2]()
  • [{integer}::ilog10]()
  • [NonZeroU*::ilog2]()
  • [NonZeroU*::ilog10]()
  • [NonZero*::BITS]()

这些 API 现在在 const 中是稳定的:

  • [char::from_u32]()
  • [char::from_digit]()
  • [char::to_digit]()
  • [core::char::from_u32]()
  • [core::char::from_digit]()

更多详情可查看:https://blog.rust-lang.org/2023/01/26/Rust-1.67.0.html

优秀的个人博客,低调大师

微信关注我们

原文链接:https://www.oschina.net/news/226138/rust-1-67-released

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
优质分享Android(本站安卓app)

优质分享Android(本站安卓app)

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Apache Tomcat7、8、9(Java Web服务器)

Apache Tomcat7、8、9(Java Web服务器)

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。