Package | Description |
---|---|
cn.hutool.cache |
提供简易的缓存实现,此模块参考了jodd工具中的Cache模块
|
cn.hutool.cache.file |
提供针对文件的缓存实现
|
cn.hutool.cache.impl |
提供各种缓存实现
|
Modifier and Type | Method and Description |
---|---|
default Cache<K,V> |
Cache.setListener(CacheListener<K,V> listener)
设置监听
|
Modifier and Type | Field and Description |
---|---|
protected Cache<File,byte[]> |
AbstractFileCache.cache
缓存实现
|
Modifier and Type | Method and Description |
---|---|
protected Cache<File,byte[]> |
LRUFileCache.initCache() |
protected Cache<File,byte[]> |
LFUFileCache.initCache() |
protected abstract Cache<File,byte[]> |
AbstractFileCache.initCache()
初始化实现文件缓存的缓存对象
|
Modifier and Type | Class and Description |
---|---|
class |
AbstractCache<K,V>
超时和限制大小的缓存的默认实现
继承此抽象缓存需要: 创建一个新的Map 实现 prune 策略
|
class |
FIFOCache<K,V>
FIFO(first in first out) 先进先出缓存.
|
class |
LFUCache<K,V>
LFU(least frequently used) 最少使用率缓存
根据使用次数来判定对象是否被持续缓存 使用率是通过访问次数计算的。 |
class |
LRUCache<K,V>
LRU (least recently used)最近最久未使用缓存
根据使用时间来判定对象是否被持续缓存 当对象被访问时放入缓存,当缓存满了,最久未被使用的对象将被移除。 |
class |
NoCache<K,V>
无缓存实现,用于快速关闭缓存
|
class |
ReentrantCache<K,V>
使用
ReentrantLock 保护的缓存,读写都使用悲观锁完成,主要避免某些Map无法使用读写锁的问题例如使用了LinkedHashMap的缓存,由于get方法也会改变Map的结构,因此读写必须加互斥锁 |
class |
StampedCache<K,V>
使用
StampedLock 保护的缓存,使用读写乐观锁 |
class |
TimedCache<K,V>
定时缓存
此缓存没有容量限制,对象只有在过期后才会被移除 |
class |
WeakCache<K,V>
弱引用缓存
对于一个给定的键,其映射的存在并不阻止垃圾回收器对该键的丢弃,这就使该键成为可终止的,被终止,然后被回收。 |
Copyright © 2024. All rights reserved.