pub struct OrderingHeader {
pub magic: u64,
pub mode: AtomicU32,
pub stamp_kind: u32,
pub inversions: AtomicU64,
pub shared_stamp: AtomicU64,
pub drainer_token: AtomicU64,
pub drainer_heartbeat: AtomicU64,
pub drainer_epoch: AtomicU64,
/* private fields */
}Expand description
Ordering header. One cache line at offset 0 of the region.
Fields§
§magic: u64§mode: AtomicU32Active OrderingMode, cross-process visible. The ordered
switch is one Release store here; the in-flight backlog is
retroactively ordered because the stamps were already there.
stamp_kind: u32StampKind discriminant. Written once at creation; openers
adopt it.
inversions: AtomicU64Cross-producer inversions observed at pop. The runtime signal that converts the invisible ordering property into “inversions/sec observed”.
Stamp counter for StampKind::SharedCounter.
drainer_token: AtomicU64Drainer lease: (pid << 32) | consumer_id, 0 = unleased.
drainer_heartbeat: AtomicU64Drainer heartbeat: last drainer_epoch value the holder
confirmed liveness at.
drainer_epoch: AtomicU64Global epoch for heartbeat-grace takeover. Ticked by the
sidecar (or any caller); mirrors OwnerLease::tick_epoch.
Auto Trait Implementations§
impl !Freeze for OrderingHeader
impl RefUnwindSafe for OrderingHeader
impl Send for OrderingHeader
impl Sync for OrderingHeader
impl Unpin for OrderingHeader
impl UnsafeUnpin for OrderingHeader
impl UnwindSafe for OrderingHeader
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