#key-value-store #cache #thread-safe #memory #times #expiry #set-key

r-cache

r-cache 是一个内存中的键值存储库。它是线程安全的,并且值可以有过期时间。

15 个版本

0.5.0 2023年2月18日
0.4.5 2022年11月18日
0.4.4 2021年12月13日
0.4.3 2021年8月14日
0.3.0 2020年10月18日

123缓存 分类中

Download history 992/week @ 2024-04-02 864/week @ 2024-04-09 768/week @ 2024-04-16 1108/week @ 2024-04-23 864/week @ 2024-04-30 879/week @ 2024-05-07 756/week @ 2024-05-14 916/week @ 2024-05-21 1332/week @ 2024-05-28 1231/week @ 2024-06-04 1151/week @ 2024-06-11 1005/week @ 2024-06-18 1164/week @ 2024-06-25 913/week @ 2024-07-02 1223/week @ 2024-07-09 1079/week @ 2024-07-16

4,572 每月下载量
用于 ndproxy

MIT/Apache 协议

11KB
206 代码行

r-cache

一个简单的缓存库


r-cache 是一个内存中的键值存储库。它是线程安全的,并且值可以有过期时间。

示例

use async_std::sync::Arc;
use async_std::task;
use r_cache::cache::Cache;
use std::time::Duration;

const KEY: i8 = 0;
const VALUE: &str = "VALUE";

#[async_std::main]
async fn main() {
    let cache = Arc::new(Cache::new(Some(Duration::from_secs(5 * 60))));
    task::spawn({
        let cache = Arc::clone(&cache);
        async move {
            loop {
                task::sleep(Duration::from_secs(10 * 60)).await;
                cache.remove_expired();
            }
        }
    });

    cache.set(KEY, VALUE, None);

    assert_eq!(VALUE, cache.get(&KEY).unwrap())
}

依赖项

~0.9–6.5MB
~20K SLoC