哪些Guava类适用于线程安全缓存?我使用的是动态构造的组合键,因此softKeys()毫无意义,对吧?我在某个地方看到了ConcurentLinkedHashMap,这是要走的路吗?它已经在最新版本中了吗?很抱歉询问的困惑方式...
更新资料
这个问题已经很老了,翻看他的答案可能会浪费时间。很久以来就有了 CacheBuilder
这是要走的路。
最佳答案
听起来像您想要MapMaker.makeComputingMap
,但是您提到了softKeys
,所以我认为您已经熟悉该类了。
您对softKeys
的看法是正确的-如果您即时编写键,它将不起作用,因为softKeys
会导致 map 使用==
而不是equals
进行键比较。但是只要使用softValues
和expiration
就可以了,只要重新创建被驱逐的条目没有副作用。