pub struct SpscProducer<T, const N: usize> { /* private fields */ }Expand description
Producer half of a split SpscRing.
Implementations§
Source§impl<T, const N: usize> SpscProducer<T, N>
impl<T, const N: usize> SpscProducer<T, N>
Sourcepub fn push(&self, item: T) -> Result<(), StreamError>
pub fn push(&self, item: T) -> Result<(), StreamError>
Push an item into the ring. See SpscRing::push.
Sourcepub fn try_push_or_drop(&self, item: T) -> bool
pub fn try_push_or_drop(&self, item: T) -> bool
Push an item, silently dropping it if the ring is full. See SpscRing::try_push_or_drop.
Returns true if enqueued, false if dropped.
Sourcepub fn fill_ratio(&self) -> f64
pub fn fill_ratio(&self) -> f64
Fraction of capacity currently occupied: len / capacity.
Returns a value in [0.0, 1.0]. Useful for backpressure monitoring
on the producer side.
Trait Implementations§
Auto Trait Implementations§
impl<T, const N: usize> Freeze for SpscProducer<T, N>
impl<T, const N: usize> !RefUnwindSafe for SpscProducer<T, N>
impl<T, const N: usize> !Sync for SpscProducer<T, N>
impl<T, const N: usize> Unpin for SpscProducer<T, N>
impl<T, const N: usize> UnsafeUnpin for SpscProducer<T, N>
impl<T, const N: usize> !UnwindSafe for SpscProducer<T, N>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more