我有一个应用程序,它有几个非常大的数据块,需要很长时间来计算。我将它们中的每一个都保存为 SoftReference,因为我可以重新计算它们,但这需要很长时间。所以只要我有足够的内存,我就想重用我已经计算过的东西。这正是 Java SoftReference 的用途。
但是,我真正想做的是对这些数据块进行排名,因为有些数据块更重要,计算时间比其他数据块要长得多,所以我想让垃圾收集器最后收集这些数据。
我不想要将这些块写入磁盘的解决方案。我知道该怎么做。我只想能够在我的软引用上设置垃圾收集的顺序/优先级。