#[repr(C, align(64))]pub struct SharedFanoutLayout4 {
pub header: LayoutHeader,
pub initialized: IndexbusAtomicU32,
pub pad0: u32,
pub pad_to_64: [u8; 40],
pub slot_pool: SlotPoolLayout,
pub producer_queue: IndexQueue,
pub producer_queue_mpsc: MpscQueue,
pub router_rr: IndexbusAtomicU32,
pub pad_router_rr: u32,
pub consumer_queues: [IndexQueue; 4],
}Expand description
Concrete v1 fanout layout for N=4 (header generation target).
Fields§
§header: LayoutHeaderCommon region header (magic/version/capabilities/layout size).
initialized: IndexbusAtomicU320 = uninitialized, 1 = initializing, 2 = initialized
pad0: u32Padding (reserved).
pad_to_64: [u8; 40]Pad to 64 so SlotPoolLayout (align 64) starts at offset 64.
slot_pool: SlotPoolLayoutSlot pool backing all queues.
producer_queue: IndexQueueSPSC producer queue of slot indices.
producer_queue_mpsc: MpscQueueMPSC producer queue of slot indices.
router_rr: IndexbusAtomicU32Router round-robin cursor used by work-queue routing.
pad_router_rr: u32Padding (reserved).
consumer_queues: [IndexQueue; 4]Per-consumer SPSC queues.
Auto Trait Implementations§
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