在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
Rust释出了最新的更新版本1.32.0,新增了方便侦错用的dbg宏,更换了默认的分配器,从原本默认使用jemalloc改为系统分配器。Rust 1.32.0加入了dbg宏(Macro),这个宏是打印侦错流开发者(Print Debugger)一大福音,过去用println!打印变量,要麻烦地设定参数,而使用dbg,只需要把参数丢进dbg!中,就能简单地显示变量中的值,而且还不需要担心上下文。当开发者有好几个println!需要处理,便很容易混淆,除非开发者想要多花费心力,自己增加上下文。 官方还提到,开发者使用println!并不是好习惯,因为println!打印标准输出,反而eprintln!会是一个比较好的选择,因为eprintln!打印标准错误,而使用dbg!也不需要担心,该宏以正确的方式处理标准错误。虽然dbg!只是一个小宏,但是却能帮助开发者的侦错体验。过去Rust使用jemalloc而非系统分配器(Allocator),虽然普遍认为jemalloc的效能比较好,但随着时间发展,情况已经改变了,不过,官方却也越来越难把jemalloc拿掉,因为势必造成部分使用jemalloc的程序发生错误。另外,jemalloc只是特定平台的默认配置,在Windows上,早已使用系统分配器很长一段时间了。 官方提到,虽然jemalloc效能不错,但也有其缺点,像是jemalloc会增加每个Rust二位档案约300Kb的大小。基于种种原因,加上从Rust 1.28开始提供全局分配器,因此官方也就在Rust 1.32把默认分配器切换成系统分配器,但开发者仍然可以从Crate使用到jemalloc。此外,在过去两个发布版本中,官方对模块系统进行了一些改进,而在Rust 1.32.0完成最后一步,统一路径现在允许之前无效的输入路径语句,其解析的方法与非输入路径的方式相同。到这个版本,官方已经完成模块系统的简化工作。 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论