普贤教程 › 包参考
cache 包
TTL / LRU 缓存
| 项 | 值 |
|---|---|
| 包名 | cache |
| 版本 | 0.2.0 |
| 可用版本 | 0.1.0 / 0.2.0 |
| 入口 | cache.px |
| 分类 | 并发与通用模式 |
| 文件数 / 行数 | 1 / 151 |
安装与引入
bash
pxpkg init # 首次 pxpkg add cache@0.2.0 pxpkg install
px
import cache所属分类教程:并发与通用模式
公开接口
| 函数 | 参数 |
|---|---|
ca_new | max_entries=100 |
ca_set | cache, key, val, ttl_sec=0, now=null |
ca_get | cache, key, now=null |
ca_has | cache, key, now=null |
ca_len | cache, now=null |
ca_delete | cache, key |
其余 11 个 def(内部与辅助,可直接调用但不属稳定接口)
| 函数 | 参数 |
|---|---|
ca_now | now |
ca_drop | order, key |
ca_clean | cache, now |
ca_touch | cache, k |
ca_clear | cache |
ca_keys | cache, now=null |
ca_values | cache, now=null |
ca_entries | cache, now=null |
ca_stats | cache, now=null |
ca_peek | cache, key, now=null |
ca_set_many | cache, pairs, ttl_sec=0, now=null |
包内说明(源码头注释)
text
============================================================ 普贤生态库:registry/cache —— TTL / LRU 缓存 ------------------------------------------------------------ 纯函数库(无 IO、无状态,缓存状态以 dict 显式传递),双模式一致。 ca_new(max_entries=100) → dict ca_set(cache, key, val, ttl_sec=0, now=null) → cache # ttl 0 = 不过期 ca_get(cache, key, now=null) → Ok(v) | Err # 缺失/过期 Err ca_has / ca_len / ca_delete 淘汰:LRU(MRU 在 order 尾部);超限驱逐队首。过期惰性清理。 时间:now 显式传入(默认 now_sec()),测试可控、库本身无 IO。 ============================================================