【发布时间】:2011-09-29 08:22:21
【问题描述】:
根据 Guava 的 MapMaker.softValues() 的文档:
警告:在大多数情况下,最好设置每个缓存的最大大小,而不是使用软引用。如果您非常熟悉软引用的实际后果,则应仅使用此方法。
我对软引用有中等程度的了解——它们的行为、用途以及它们与垃圾收集的约定。但是我想知道文档所暗示的这些实际后果是什么。为什么使用最大尺寸而不是软引用更好?就实现缓存而言,软引用的算法和行为是否比硬编码上限更有效?
【问题讨论】:
标签: java caching garbage-collection soft-references