pub struct MultiLevelCache { /* private fields */ }Expand description
Multi-level cache combining memory and disk tiers
Implementations§
Source§impl MultiLevelCache
impl MultiLevelCache
Sourcepub fn new(config: CacheConfig) -> Result<Self>
pub fn new(config: CacheConfig) -> Result<Self>
Creates a new multi-level cache
Sourcepub async fn put_with_ttl(
&self,
key: CacheKey,
data: Bytes,
ttl: Duration,
) -> Result<()>
pub async fn put_with_ttl( &self, key: CacheKey, data: Bytes, ttl: Duration, ) -> Result<()>
Puts an entry with TTL
Sourcepub fn stats(&self) -> &CacheStats
pub fn stats(&self) -> &CacheStats
Returns cache statistics
Sourcepub fn memory_size(&self) -> usize
pub fn memory_size(&self) -> usize
Returns the current memory cache size
Auto Trait Implementations§
impl !Freeze for MultiLevelCache
impl !RefUnwindSafe for MultiLevelCache
impl Send for MultiLevelCache
impl Sync for MultiLevelCache
impl Unpin for MultiLevelCache
impl UnsafeUnpin for MultiLevelCache
impl !UnwindSafe for MultiLevelCache
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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 moreCreates a shared type from an unshared type.