Rust 1.28释出,开发者现在可用全域分配器了!
2018-08-06 18:32:52 | 来源:ithome | 投稿:梁子 | 编辑:dations

原标题:Rust 1.28释出,开发者现在可用全域分配器了!

距离上一个更新两个月后,Rust释出了1.28版本。Rust△1.27版本让开发者可以直接撰写低阶SIMD语法,而在1.28版本,官方释出了稳定版的全域分配器(Global△Allocators)以及NonZero数字型态,而Rust的套件管理器Cargo也有更新。

分配器是Rust应用程序向系统请求记忆体的方法,过去Rust不允许改变获取记忆体的方式,而这样的限制阻挡了一些使用案例。在部分平台上,开发者必须要使用另外的系统分配器jemalloc,但开发者并没有方法可以控制这个关键元件。

在Rust△1.28上,现在#[global_allocator]属性已经进入稳定阶段,能让Rust程式配置他们的分配器为系统分配器,并且借由实作GlobalAlloc特性来定义新的分配器。部分平台上Rust程式的预设分配器是jemalloc,而现在标准函式库提供了系统分配器的Handle,只要宣告静态变数,并且以#[global_allocator]属性标记,就能够在需要的时候切换到系统分配器。

当开发者想要定义订制化的分配器也没问题,通过实作GlobalAlloc特性也可以轻松做到。

另一个进入稳定版本的函式库为NonZero数字类型,这些标准非带号(Unsigned)整数型态有NonZeroU8、NonZeroU16、NonZeroU32、NonZeroU64、NonZeroU128和NonZeroUsize。这些型态能帮助开发者进行容量最佳化,像是Option△u8 是2个位元组,而Option△NonZeroU8 则只有1个位元组大小,而且无论这些整数型态被包在什么结构当中,都不影响最佳化的结果,例如当NonZeroU8并非放在Option中,而是放于Door里,仍然为一个位元组大。

此外,在Rust的套件管理器Cargo的更新,现在不再允许使用者以修改Src目录的建置脚本发布套件。

tags:

上一篇  下一篇

相关:

Malwarebytes释出可侦测恶意程式与诈骗客服的浏览器扩充程式

图片来源: Malwarebytes 防毒软件业者Malwarebytes于本周发表了支援Chrome与Firefox的扩充程式版本,可在使用者浏览网络时,协助拉黑恶意网站、过滤垃圾内容,还能侦测诈骗的技术支援服务。2006年发表的Malwarebytes

Things Gateway释出0.5,更灵活的自订系统与规则引擎,语音助理来了!

Things△Gateway现在也有语音助理,使用者可以语音命令控制装置,像是开关电灯或是设置等级、温度和颜色等动作,而智慧助理收到使用者命令后,也会以语音回应,这项功能目前仍在实验阶段。 图片来源: Mozilla Mozi

Arm释出物联网管理平台Pelion整合复杂的技术生态

为推动物联网战略,串联物联网装置IP、Kigen、Mbed△OS与PSA,Arm推出了物联网管理平台Pelion,其主打统一的安全模型以及单一控制台,提供高安全性且简易的管理平台。Arm声称这是业界第一个混合环境的端到端物联网连

企业级Kafka平台Confluent释出5.0版

在2011年被LinkedIn开源释出的分散式串流分析平台Kafka,而在2014年,LinkedIn离职员工另起炉灶,创办提供企业级Kafka串流服务的Confluent。在近日,该公司释出了Confluent△Platform△5.0版,让用户可以更快整理分散

微服务平台Istio正式释出1.0版,支援Kubernetes跨丛集连线

最初由Google、IBM及Lyft共同开源释出的微服务平台Istio,近日跨出重要的版本里程碑,释出了1.0版。距离第一个释出的0.1版,已经超过一年。Istio团队表示,现在该平台已经逐渐出现大型企业于正式环境中采用的案例,像

站长推荐: