pub struct ProviderSupervisor { /* private fields */ }Expand description
Owns native provider operations through physical exit and canonical observation disposition.
Clean shutdown requires begin_retirement followed by ticks until
ProviderSupervisorState::Closed. Drop only sends one best-effort
force-stop request to each still-live physical owner; it does not wait or
prove that an OS resource was reaped.
Implementations§
Source§impl ProviderSupervisor
impl ProviderSupervisor
pub fn new( descriptor: CapabilityProviderDescriptor, runtime: ProviderRuntimeHandle, executor: Box<dyn NativeProviderExecutor>, ) -> Result<Self, ProviderSupervisorBuildError>
pub fn new_with_stop_grace( descriptor: CapabilityProviderDescriptor, runtime: ProviderRuntimeHandle, executor: Box<dyn NativeProviderExecutor>, stop_grace: Duration, ) -> Result<Self, ProviderSupervisorBuildError>
pub fn descriptor(&self) -> &CapabilityProviderDescriptor
pub fn begin_retirement(&mut self) -> Result<(), ProviderRuntimeError>
pub fn snapshot(&self) -> ProviderSupervisorSnapshot
pub fn state(&self) -> ProviderSupervisorState
pub fn drain_exit_acks(&mut self, limit: usize) -> Vec<PhysicalExitAck>
pub fn drain_faults(&mut self, limit: usize) -> Vec<ProviderSupervisorFault>
pub fn tick(&mut self) -> ProviderSupervisorTick
Trait Implementations§
Source§impl Drop for ProviderSupervisor
impl Drop for ProviderSupervisor
Auto Trait Implementations§
impl !RefUnwindSafe for ProviderSupervisor
impl !Sync for ProviderSupervisor
impl !UnwindSafe for ProviderSupervisor
impl Freeze for ProviderSupervisor
impl Send for ProviderSupervisor
impl Unpin for ProviderSupervisor
impl UnsafeUnpin for ProviderSupervisor
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