pub struct PlanRuntimeResources<R>where
R: DeviceRuntime,{ /* private fields */ }Expand description
Unique plan-lifetime owner of the runtime, dynamic pools, maintenance authority, static buffers, capacity claims, and cleanup authority.
Implementations§
Source§impl<R> PlanRuntimeResources<R>where
R: DeviceRuntime,
impl<R> PlanRuntimeResources<R>where
R: DeviceRuntime,
pub fn deferred_cleanup_status(&self) -> DeferredDeviceCleanupStatus
pub fn create_execution_lane( &self, ) -> Result<Arc<ExecutionLane<R>>, ExecutionLaneCreationError<R::Error>>
Sourcepub fn maintain_deferred_cleanups(
&self,
maximum_tasks: usize,
) -> Result<DeferredDeviceCleanupMaintenanceReceipt, VNextError>
pub fn maintain_deferred_cleanups( &self, maximum_tasks: usize, ) -> Result<DeferredDeviceCleanupMaintenanceReceipt, VNextError>
Attempts each selected cleanup owner at most once. This may block in a backend recovery call and must therefore run on a scheduler recovery thread, never on a request, admission, or destructor path.
pub fn trusted_runtime_binding( self: &Arc<Self>, ) -> Result<TrustedPlanRuntimeBinding<R>, VNextError>
pub fn maintain_for_admission_deferred( self: &Arc<Self>, deferred: &AdmissionDeferred, ) -> Result<DynamicDeferredMaintenanceOutcome, VNextError>
Sourcepub fn dynamic_pool_status(
&self,
) -> Result<DynamicPoolMaintenanceStatus, VNextError>
pub fn dynamic_pool_status( &self, ) -> Result<DynamicPoolMaintenanceStatus, VNextError>
Returns a point-in-time view of the exact dynamic pools owned by this plan. Product telemetry consumes this instead of maintaining a second allocator ledger that can drift from admission decisions.
pub fn write_dynamic_capacity_availability( &self, out: &mut Vec<CapacityAvailabilityEpoch>, ) -> Result<CapacityEpochs, VNextError>
pub fn register_capacity_waiter( self: &Arc<Self>, observed: &CapacityWaitCondition, ) -> Result<PlanCapacityWaitRegistration<R>, VNextError>
pub fn is_closing(&self) -> bool
pub fn close( resources: Arc<Self>, ) -> Result<PlanRuntimeCloseOutcome<R>, PlanRuntimeCloseFailure<R>>
Auto Trait Implementations§
impl<R> !Freeze for PlanRuntimeResources<R>
impl<R> !RefUnwindSafe for PlanRuntimeResources<R>
impl<R> !UnwindSafe for PlanRuntimeResources<R>
impl<R> Send for PlanRuntimeResources<R>
impl<R> Sync for PlanRuntimeResources<R>
impl<R> Unpin for PlanRuntimeResources<R>
impl<R> UnsafeUnpin for PlanRuntimeResources<R>where
DynamicPoolMaintenanceController<R>: UnsafeUnpin,
Arc<DynamicPoolSet<R>>: UnsafeUnpin,
PlanRuntimeStatic<R>: UnsafeUnpin,
Arc<R>: UnsafeUnpin,
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