Skip to main content

AdmissionRelease

Trait AdmissionRelease 

Source
pub trait AdmissionRelease:
    Send
    + Sync
    + Debug {
    // Required method
    fn release(&self, slot: usize);
}
Expand description

The runtime side of an AdmissionLease: what to call when a request that was holding a VRAM slot is finished with it.

A separate trait rather than a closure so the lease stays Debug and has no generic parameter to thread through every signature that carries one. The implementation lives in gglib-runtime; this crate only needs to be able to call it from a Drop, which is why Self::release is synchronous and must not block.

Required Methods§

Source

fn release(&self, slot: usize)

Release one in-flight reference to slot, waking the scheduler if that was the last one.

Called from AdmissionLease’s Drop, so it must never block, panic, or await.

Implementors§