bbqueue
bbqueue copied to clipboard
A SPSC, lockless, no_std, thread safe, queue, based on BipBuffers
Some DMA engines and peripherals require that buffers are precisely aligned. This commit marks BBBuffer as #[repr(C)] so that the buffer is the first member of the struct. With this...
This is an initial draft of an async API as part of bbqueue with a test showing the working. Status: * [x] Basic read and write API implementation + test...
This project seems to get more or less mature. The whole point of existence of BipBuffer is performance. I wonder why there are no benchmarking results here. Did anybody do...
This implements: - `BBBuffer::try_take_producer`: split-off just the producer - `BBBuffer::try_take_consumer`: split-off just the consumer - `BBBuffer::try_release_producer`: release (give back) just the producer - `BBBuffer::try_release_consumer`: release (give back) just the consumer...
cc #67 This allows the `BBuffer` to use a pointed-to memory location rather than an owned array. Some use-cases would be shared-memory IPC, MMIO, or using a specific memory region...
Hi there, I took a stab at #41 here. What's missing is a `bbqueue::heap::FramedProducer` and `bbqueue::heap::FramedConsumer`. Also I'm unsure of how you want to structure the crate in terms of...
Initial attempt on making BBQueue generic, so it is possible to create and use a ring buffer with primitive or non-primitive types. - Made BBQueue generic over the element type...
Hi, It would be nice if there were one more method for `Producer` that tries to "read" the oldest data (to make room for the newest) if the `Consumer` is...
Is BBQueue limited to buffering bytes? If so (and I think it is), it's an important limitation to mention in the top-level README. I somehow made it through the video,...