pub struct KvBlockPool { /* private fields */ }Expand description
A bounded pool of fixed-size KV-cache blocks (in positions) shared
across many KvCache instances, typically one pool per server
process. Each KvCache::with_pool acquires one block up front and
one more each time it grows past its currently held capacity;
free_blocks is therefore a live, accurate admission-control
signal – a caller can check it before accepting a new request
rather than discovering exhaustion only after committing memory.
Implementations§
Source§impl KvBlockPool
impl KvBlockPool
Sourcepub fn new(block_size: usize, total_blocks: usize) -> Self
pub fn new(block_size: usize, total_blocks: usize) -> Self
block_size positions per block, total_blocks blocks in the
whole shared budget (so block_size * total_blocks positions
total, across however many caches draw from this pool at once).
pub fn block_size(&self) -> usize
pub fn total_blocks(&self) -> usize
pub fn free_blocks(&self) -> usize
Auto Trait Implementations§
impl Freeze for KvBlockPool
impl RefUnwindSafe for KvBlockPool
impl Send for KvBlockPool
impl Sync for KvBlockPool
impl Unpin for KvBlockPool
impl UnsafeUnpin for KvBlockPool
impl UnwindSafe for KvBlockPool
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
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