#队列 #缓冲区 #环形 #随机访问

ring_buffer

环形缓冲区是一种具有随机访问功能的队列

11 个版本 (6 个稳定版)

2.0.2 2021 年 7 月 2 日
2.0.0 2021 年 7 月 1 日
1.0.2 2021 年 7 月 1 日
1.0.0 2021 年 6 月 1 日
0.1.1 2019 年 7 月 13 日

#1114算法

Download history 13/week @ 2024-03-28 7/week @ 2024-04-04 11/week @ 2024-05-02 3/week @ 2024-05-09

每月 105 次下载
用于 gpcas_simulator

MIT/Apache

49KB
831

ring_buffer

pipeline status

RingBuffer 是向量与队列的结合。它允许直接访问元素,同时也可以像队列一样添加和移除元素。

示例

use ringbuffer::RingBuffer;

fn main() {
    let mut buffer = RingBuffer::new();
    
    let first_index = buffer.push(42);
    let second_index = buffer.push(9001);
    
    println!("{} == {}", buffer.get_relative(0),
        buffer.get_absolute(first_index));
    
    println!("{} == {}", buffer.get_relative(1),
        buffer.get_absolute(second_index));
}

为什么使用这个?

当在处理元素流的同时需要随机访问元素时,环形缓冲区的特性非常有用。

许可证

根据您的选择,在 Apache 许可证,版本 2.0MIT 许可证 下获得许可。
除非您明确声明,否则根据 Apache-2.0 许可证定义的,您有意提交以包含在此软件包中的任何贡献,都将根据上述方式双重许可,没有任何额外的条款或条件。

无运行时依赖