pub struct MemoryCacheDriver { /* private fields */ }Expand description
内存缓存驱动(对齐 PHP think\cache\driver\File)
基于 sz_rust_orm_facade::MemoryCache,提供进程内内存缓存。
§PHP 对齐
PHP think\cache\driver\File 使用文件系统存储缓存,序列化为 PHP 字符串
加 <?php exit();?> 头部防护。本驱动使用内存 HashMap,简化文件 IO,
但保留 PHP think-orm 的核心行为:
get:TTL 过期返回Noneset:支持 TTLhas:TTL 过期返回falseinc/dec:读取 → 加减 → 写回(数字字符串)
Implementations§
Source§impl MemoryCacheDriver
impl MemoryCacheDriver
Sourcepub fn with_default_ttl(ttl: Duration) -> Self
pub fn with_default_ttl(ttl: Duration) -> Self
创建带默认 TTL 的内存缓存驱动
Trait Implementations§
Source§impl CacheDriver for MemoryCacheDriver
impl CacheDriver for MemoryCacheDriver
Source§fn set_raw(
&self,
key: &str,
value: Vec<u8>,
ttl: Option<Duration>,
) -> Result<(), CacheError>
fn set_raw( &self, key: &str, value: Vec<u8>, ttl: Option<Duration>, ) -> Result<(), CacheError>
写入缓存原始字节
Source§fn inc(&self, key: &str, step: i64) -> Result<i64, CacheError>
fn inc(&self, key: &str, step: i64) -> Result<i64, CacheError>
自增(对齐 PHP
inc,不经序列化层) Read moreSource§fn dec(&self, key: &str, step: i64) -> Result<i64, CacheError>
fn dec(&self, key: &str, step: i64) -> Result<i64, CacheError>
自减(对齐 PHP
dec,不经序列化层) Read moreSource§fn tag_append(&self, tag_key: &str, cache_key: &str) -> Result<(), CacheError>
fn tag_append(&self, tag_key: &str, cache_key: &str) -> Result<(), CacheError>
Auto Trait Implementations§
impl Freeze for MemoryCacheDriver
impl RefUnwindSafe for MemoryCacheDriver
impl Send for MemoryCacheDriver
impl Sync for MemoryCacheDriver
impl Unpin for MemoryCacheDriver
impl UnsafeUnpin for MemoryCacheDriver
impl UnwindSafe for MemoryCacheDriver
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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 more