Skip to content
PatternDirClean edited this page Apr 21, 2022 · 2 revisions

只有一个缓存位的缓存工具。

建议使用 build() 方法获取 Build 工具进行构造。

使用 get()set() 方法来获取和设置缓存数据。

使用示例

Cache<Object> cache = Cache.build(Object.class)
                           // 注册引用类型
                           .refernce(WeakReference.class)
                           .build();

// -> null
cache.get(System.out::println);
// 缓存数据
cache.set(new Object());
// -> Object.toString()
cache.get(System.out::println);

自填充变种 SCache

移除 set() 方法,在注册的时候使用可抛异常的 Supplier 功能接口作为数据生成方法, 在数据缓存失效后通过该接口重新生成对象。

使用示例

SCache<Object> cache = SCache.build(Object.class)
                             // 数据生产接口, ()-> new Object();
                             .createdata(Object::new)
                             // 注册引用类型
                             .refernce(WeakReference.class)
                             .build();

// -> Object.toString() will is not null
cache.get(System.out::println);

Clone this wiki locally