在 Rust 中存储连续数据?git
-
使用 Rust 中的数组 [T; N]
. -
Slice &[T]
or&mut [T]
, 能够方便的 split. -
Boxed slice Box<[T]>
. -
Vec
. 长度和内容均可以变化,这多是咱们最经常使用的方式. -
smallvec
, 第三方 crate, 当元素较少时能够存储在 stack 上. -
arrayvec
, 第三方 crate, 如名字所述, 底层是用 Array 来存储的,所以长度不能动态增加. 可是数据能够存储在 data segment, stack 或 heap上. -
tinyvec
, 第三方 crete, 能够100%替代smallvec
和arrayvec
的一个crate. -
VecDeque
, 标准库中的std::collections::VecDeque
, 是一个可增加的ring buffer实现的双端队列.能够高效的pop
和push
. -
bytes
, 第三方 crate,提供了Bytes
,能够很是方便高效的存储和操做连续的内存.不过他只能存储u8
,经常使用于网络.
Rust 实现 Bloom Filter
从零到生产: 使用 Rust 进行 API开发系列
从零到生产
是一个使用 Rust 进行 Web API 开发的系列文章. 目前更新到第三章,使用
actix-web
来实现邮件订阅的 API 部分.
为何 Rust 做为第二门语言很是棒
Rust books
SPIR-Q 轻量级的SPIR-V reflection 库
-
Rustcc论坛: 支持rss -
微信公众号:Rust语言中文社区
本文分享自微信公众号 - Rust语言中文社区(rust-china)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。github