Java Kotlin Guava缓存未显示正确的命中率
我正在尝试使用LRU缓存,如图所示 我的代码:Java Kotlin Guava缓存未显示正确的命中率,java,caching,kotlin,guava,Java,Caching,Kotlin,Guava,我正在尝试使用LRU缓存,如图所示 我的代码: import com.google.common.cache.CacheBuilder import java.util.concurrent.TimeUnit fun main(args: Array<String>) { val cache = CacheBuilder.newBuilder().maximumSize(100). expireAfterAccess(10, TimeUnit.HOURS) .b
import com.google.common.cache.CacheBuilder
import java.util.concurrent.TimeUnit
fun main(args: Array<String>) {
val cache = CacheBuilder.newBuilder().maximumSize(100).
expireAfterAccess(10, TimeUnit.HOURS)
.build<String, String>()
cache.put("a", "blah")
val x = cache.getIfPresent("a")
cache.stats().also { println(it) }
println(x)
}
我希望hitCount
为1,而不是0
我错过了什么 您缺少对CacheBuilder
的调用:
在缓存操作期间,启用CacheStats
的累积。没有这个Cache.stats()
将为所有统计返回零
您缺少对CacheBuilder
的调用:
在缓存操作期间,启用CacheStats
的累积。没有这个Cache.stats()
将为所有统计返回零
CacheStats{hitCount=0, missCount=0, loadSuccessCount=0, loadExceptionCount=0, totalLoadTime=0, evictionCount=0}
blah