pub struct SelectorRebuildGate { /* private fields */ }Expand description
A serial rebuild gate shared by one or more LoadBalancerGroups.
The gate permits one selector build at a time. After a replacement is published, it also waits for all readers of the retired selector to release it before permitting another build. Groups that share one gate therefore retain at most one additional selector generation beyond their currently published selectors: either one replacement under construction or one retired selector still held by readers, never both.
Retired selectors notify the gate when their final reader releases them, so one gate can coordinate groups with different selector implementations without polling.
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for SelectorRebuildGate
impl RefUnwindSafe for SelectorRebuildGate
impl Send for SelectorRebuildGate
impl Sync for SelectorRebuildGate
impl Unpin for SelectorRebuildGate
impl UnsafeUnpin for SelectorRebuildGate
impl UnwindSafe for SelectorRebuildGate
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