pub struct DefaultOrderingPolicy {
pub hysteresis: Duration,
pub auto_order_threshold: Option<f64>,
}Expand description
Default ordering policy.
- Acts on the QoS declaration always:
GlobalFifoarmsMergeByStamp; withdrawing toPerProducerdisarms back toUnordered(only whenauto_order_thresholdis unset - see below). - Acts on the inversion rate only when the caller pre-authorized
an automatic response by setting
auto_order_threshold(inversions/sec): under aPerProducerdeclaration, a rate above the threshold armsMergeByStamp. The auto arm is one-way - merged pops read zero inversions by construction, so there is no symmetric signal to disarm on; disarming is the caller’s call (QoS declaration or an explicitset_ordering_mode).
Fields§
§hysteresis: Duration§auto_order_threshold: Option<f64>Trait Implementations§
Source§impl Default for DefaultOrderingPolicy
impl Default for DefaultOrderingPolicy
Source§impl OrderingPolicy for DefaultOrderingPolicy
impl OrderingPolicy for DefaultOrderingPolicy
fn decide(&self, obs: &OrderingPolicyObservation) -> Option<OrderingMode>
Auto Trait Implementations§
impl Freeze for DefaultOrderingPolicy
impl RefUnwindSafe for DefaultOrderingPolicy
impl Send for DefaultOrderingPolicy
impl Sync for DefaultOrderingPolicy
impl Unpin for DefaultOrderingPolicy
impl UnsafeUnpin for DefaultOrderingPolicy
impl UnwindSafe for DefaultOrderingPolicy
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