Struct SupervisionEntry
#[repr(C, align(64))]pub struct SupervisionEntry {
pub actor_id: u32,
pub state: u32,
pub parent_id: u32,
pub restart_count: u32,
pub last_heartbeat_ns: u64,
pub restart_window_start_ns: u64,
pub max_restarts: u32,
pub restart_window_ns: u64,
pub _pad: [u8; 8],
}Expand description
Entry in the supervision tree.
Stored in mapped memory so both CPU and GPU can access it. Fixed 64-byte size for GPU cache efficiency.
Fields§
§actor_id: u32Actor ID (thread block index).
state: u32Current state (see ActorState).
parent_id: u32Parent actor ID (0 = root / no parent).
restart_count: u32Restart count within current window.
last_heartbeat_ns: u64Last heartbeat timestamp (nanoseconds since kernel start).
restart_window_start_ns: u64Restart window start timestamp.
max_restarts: u32Maximum restarts allowed in window.
restart_window_ns: u64Restart window duration in nanoseconds.
_pad: [u8; 8]Padding to 64 bytes.
Implementations§
§impl SupervisionEntry
impl SupervisionEntry
pub fn dormant(actor_id: u32) -> SupervisionEntry
pub fn dormant(actor_id: u32) -> SupervisionEntry
Create a new dormant entry.
pub fn is_available(&self) -> bool
pub fn is_available(&self) -> bool
Check if this entry is available for allocation.
pub fn actor_state(&self) -> ActorState
pub fn actor_state(&self) -> ActorState
Get the actor state.
Trait Implementations§
§impl Clone for SupervisionEntry
impl Clone for SupervisionEntry
§fn clone(&self) -> SupervisionEntry
fn clone(&self) -> SupervisionEntry
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read more§impl Debug for SupervisionEntry
impl Debug for SupervisionEntry
impl Copy for SupervisionEntry
Auto Trait Implementations§
impl Freeze for SupervisionEntry
impl RefUnwindSafe for SupervisionEntry
impl Send for SupervisionEntry
impl Sync for SupervisionEntry
impl Unpin for SupervisionEntry
impl UnwindSafe for SupervisionEntry
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
§fn deserialize(
&self,
deserializer: &mut D,
) -> Result<With<T, W>, <D as Fallible>::Error>
fn deserialize( &self, deserializer: &mut D, ) -> Result<With<T, W>, <D as Fallible>::Error>
Deserializes using the given deserializer
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Gets the layout of the type.