You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
Andreas Linz 493afea3f5
Run test in release mode
3 years ago
benches rustfmt 4 years ago
examples rustfmt 4 years ago
src Fix underflow in `inspector.count` 3 years ago
tests Remove sleep from test case 3 years ago
.gitignore Ignore intellij IDEA meta folder 4 years ago
.travis.yml Run test in release mode 3 years ago
Cargo.toml Increase version to `0.2.0` 5 years ago
LICENSE_APACHE_20 Relicense under MIT/Apache-2.0 as it is common in the Rust eco system 5 years ago
LICENSE_MIT Relicense under MIT/Apache-2.0 as it is common in the Rust eco system 5 years ago
README.md Add appveyoer badge 4 years ago
appveyor.yml Run test in release mode 3 years ago

README.md

rb

Build Status Build Status (appveyor) license rustdoc

A thread-safe fixed size circular (ring) buffer written in safe Rust.

Features

  • thread-safe
  • blocking and non-blocking IO
  • no unsafe blocks
  • never under- or overflows

Examples

cargo run --example saw

Benchmark

The benchmarking feature needs rust nightly.

multirust run nightly -- cargo bench

It takes on my Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz using Rust nightly 1.9.0 about 16ms 15ms to push 2.8 million samples through the buffer in blocking IO mode. The deviation of the benchmark is about as large as the benchmark result itself, so please take the iteration time with a grain of salt.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.