hutool.cache.timed_cache¶
Module Contents¶
Classes¶
定时缓存实现。 |
API¶
- class hutool.cache.timed_cache.TimedCache(timeout: int = 60)¶
定时缓存实现。
每个缓存条目可以设置独立的过期时间,过期后自动失效。 支持定时清理过期条目以释放内存。
Initialization
初始化定时缓存。
- 参数:
timeout – 默认过期时间(秒),默认60秒
- get(key: Any, default: Any = None) Any¶
获取缓存值。若已过期则返回默认值。
- 参数:
key – 缓存键
default – 键不存在或已过期时返回的默认值
- 返回:
缓存值,不存在或已过期时返回默认值
- put(key: Any, value: Any, timeout: Optional[int] = None) None¶
放入缓存。
- 参数:
key – 缓存键
value – 缓存值
timeout – 过期时间(秒),为None时使用默认过期时间
- remove(key: Any) Any¶
移除指定键的缓存。
- 参数:
key – 缓存键
- 返回:
被移除的值,键不存在时返回None
- size() int¶
获取当前缓存大小(包含已过期但未清理的条目)。
- 返回:
当前缓存条目数
- clear() None¶
清空所有缓存。
- prune() int¶
清理过期缓存条目。
- 返回:
被清理的条目数
- schedule_prune(delay_seconds: int = 60) None¶
启动定时清理线程,定期清理过期缓存。
- 参数:
delay_seconds – 清理间隔(秒),默认60秒
- _prune_callback(delay_seconds: int) None¶
清理回调,执行清理后重新调度。
- 参数:
delay_seconds – 下次清理间隔(秒)
- _cancel_prune_timer() None¶
取消定时清理线程。