- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我对 CacheBuilder 有点困惑和 Cache在 Guava 10 中引入。文档暗示可以 overwrite values但据我所知,Cache不包含任何这样做的方法。有什么想法吗?
我正在尝试构建一个在上次读取或写入后 10 秒过期的映射。查找值时,我希望返回先前设置的值,或者如果不存在则计算默认值。
注意:这个问题已经过时了。虽然上面的 Javadoc 显示了 Cache.put(K key, V value)
方法的存在,但在问题首次发布时它并不存在。
最佳答案
长期以来,Cache#asMap
返回一个 ConcurrentMap
View 。
据我所知,还没有。但是有一个
thread提到
Cache.asMap.put
计划用于版本 11。
如果 CacheBuilder
从 MapMaker
演化而来(其中缓存设置方法目前已弃用)。
I'm trying to construct a Map that expires a key 10 seconds after it was last read or written-to. When a value is looked up, I expect the previously-set value to be returned, or a default value to be computed if none exists.
使用 expireAfterAccess(10, TimeUnit.SECONDS)
将使条目在任何访问后保持 Activity 状态 10 秒。您将获得的唯一值是您的 CacheLoader
计算的值(在 get
之前或期间)。
关于java - 如何将 () 值放入 Guava 的缓存类中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7616169/
我是一名优秀的程序员,十分优秀!