Skip to main content

MemoryMaintenanceJob

Trait MemoryMaintenanceJob 

Source
pub trait MemoryMaintenanceJob: Send + Sync {
    // Required method
    fn run<'life0, 'life1, 'async_trait>(
        &'life0 self,
        context: &'life1 MemoryMaintenanceContext,
        cancellation: CancellationToken,
    ) -> Pin<Box<dyn Future<Output = Result<MemoryMaintenanceOutcome>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
}
Expand description

One policy-owned memory maintenance operation.

Implementations may perform verified consolidation, retention projection, or other bounded host work. The storage kernel never constructs one. Runs for the same scheduled job are serialized, and cancellation fires when the owning runtime closes.

Required Methods§

Source

fn run<'life0, 'life1, 'async_trait>( &'life0 self, context: &'life1 MemoryMaintenanceContext, cancellation: CancellationToken, ) -> Pin<Box<dyn Future<Output = Result<MemoryMaintenanceOutcome>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§