pub struct ProcessingSequenceBarrier<W: WaitingStrategy> { /* private fields */ }Expand description
A barrier that controls consumer access to the ring buffer based on available sequences and dependencies.
Implementations§
Source§impl<W: WaitingStrategy> ProcessingSequenceBarrier<W>
impl<W: WaitingStrategy> ProcessingSequenceBarrier<W>
Sourcepub fn new(
alert: Arc<AtomicBool>,
gating_sequences: Vec<Arc<AtomicSequence>>,
waiting_strategy: Arc<W>,
) -> Self
pub fn new( alert: Arc<AtomicBool>, gating_sequences: Vec<Arc<AtomicSequence>>, waiting_strategy: Arc<W>, ) -> Self
Creates a new processing sequence barrier.
§Parameters
alert: Shutdown signal flaggating_sequences: Dependencies that must advance before consumptionwaiting_strategy: How threads should wait for sequences
Trait Implementations§
Source§impl<W: WaitingStrategy> SequenceBarrier for ProcessingSequenceBarrier<W>
impl<W: WaitingStrategy> SequenceBarrier for ProcessingSequenceBarrier<W>
Auto Trait Implementations§
impl<W> Freeze for ProcessingSequenceBarrier<W>
impl<W> RefUnwindSafe for ProcessingSequenceBarrier<W>where
W: RefUnwindSafe,
impl<W> Send for ProcessingSequenceBarrier<W>
impl<W> Sync for ProcessingSequenceBarrier<W>
impl<W> Unpin for ProcessingSequenceBarrier<W>
impl<W> UnwindSafe for ProcessingSequenceBarrier<W>where
W: RefUnwindSafe,
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