fring

Crates.iofring
lib.rsfring
version0.3.3
sourcesrc
created_at2023-08-18 20:24:55.525313
updated_at2023-08-28 14:56:01.255914
descriptionLightweight, no_std, and *fast* ring buffer
homepage
repositoryhttps://github.com/dlaw/fring/
max_upload_size
id948202
size24,963
David Lawrence (dlaw)

documentation

README

fring ("fast ring") is a fast, lightweight circular buffer, designed for embedded systems and other no_std targets. The memory footprint is the buffer itself plus two usize indices, and that's it. The buffer allows a single producer and a single consumer, which may operate concurrently. Memory safety and thread safety are enforced at compile time; the buffer is lock-free at runtime. The buffer length is required to be a power of two, and the only arithmetic operations used by buffer operations are addition/subtraction and bitwise-and. Compared to other Rust ring buffers (such as bbqueue), fring is less flexible, but offers reduced storage and computational overhead.

Commit count: 11

cargo fmt