pub struct DrainBarrier { /* private fields */ }Expand description
A countdown barrier the controller waits on while pipeline threads
drain. Created with the number of arriving parties (the threads that own
the lanes being stopped); each thread calls DrainBarrier::arrive
exactly once after it has stopped the lanes and flushed its in-flight
records; the controller’s DrainBarrier::wait returns true once all
parties arrived, or false on timeout (drain deadline exceeded — the
caller proceeds and unflushed data replays after restart; at-least-once
holds either way).
Implementations§
Source§impl DrainBarrier
impl DrainBarrier
Trait Implementations§
Source§impl Clone for DrainBarrier
impl Clone for DrainBarrier
Source§fn clone(&self) -> DrainBarrier
fn clone(&self) -> DrainBarrier
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for DrainBarrier
impl RefUnwindSafe for DrainBarrier
impl Send for DrainBarrier
impl Sync for DrainBarrier
impl Unpin for DrainBarrier
impl UnsafeUnpin for DrainBarrier
impl UnwindSafe for DrainBarrier
Blanket Implementations§
§impl<U> As for U
impl<U> As for U
§fn as_<T>(self) -> Twhere
T: CastFrom<U>,
fn as_<T>(self) -> Twhere
T: CastFrom<U>,
Casts
self to type T. The semantics of numeric casting with the as operator are followed, so <T as As>::as_::<U> can be used in the same way as T as U for numeric conversions. Read moreSource§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