2个版本
0.1.1 | 2021年12月12日 |
---|---|
0.1.0 | 2021年12月12日 |
在 数据结构 中排名 #2417
23KB
134 行
boxed_array_ringbuffer
Rust环形缓冲区,使用封装数组作为后端存储,确保初始化后固定大小。使用const泛型。
此crate适用于需要尽可能简单的固定大小队列的情况,并希望保证固定大小。标准库提供双端队列的变长版本,VecDeque
,但可能存在某些情况下,不希望使用的队列可以增长或缩小,例如通过使无效状态不可表示来避免错误。
环形缓冲区的存储在堆上,因为这样可以将Vec
或Box<[_]>
转换为RingBuffer
而不进行任何重新分配,并且也可以将RingBuffer
转换为VecDeque
而不进行重新分配。
有关如何使用的详细信息,请参阅https://docs.rs/boxed_array_ringbuffer上的文档。
此crate不使用任何不安全代码,并且仅依赖于标准库。