guava - 为什么番石榴缓存支持weakKeys()和weakValues()
问题描述
Guava CacheBuilder 支持weakKeys() 和weakValues()。但是如果值被收集了,为什么我们还要在缓存中保留键呢?所以如果我们只使用weakKeys(),就足够了吗?
解决方案
不是“收集键但保留值”的情况,也不是“收集值但保留键”的情况。weakKeys
weakValues
什么weakKeys
是说,“当不再有任何对key的强引用时,收集整个条目。” 什么weakValues
是说,“当不再有对该值的任何强引用时,收集整个条目。” 因此,当您同时使用两者时,当键或值没有指向它的强引用时,将收集整个条目。
推荐阅读
- reactjs - 如何在 TypeScript 中设置状态而不会出现赋值错误?
- node.js - Sequelize.select 返回错误的日期
- r - R中按组建立线性回归模型和预测
- c - C、switch case中的函数
- vb.net - SharepointOnlineCredentials 惠特 MFA
- c# - 无法使用 libplctag.NET 读取标记值
- c - 协助在使用合并编译的 C 程序中静态链接 SQLite 可加载扩展
- django - 如何让我的白噪声静态文件显示出来?
- postgresql - 无法连接到 AWS RDS
- python - 对超过 1000 个类别的变量进行分组