在 Java 中有没有一种方法可以在内存不足之前做一些事情。例如,保留以前文档状态的列表(用于撤消),并且仅在内存即将耗尽时才删除非常旧的状态?
最佳答案
For example, keeping a list of previous document states (for undo) and only removing very old states when memory is about to be exhausted?
你可以用 SoftReference
做点什么.另请注意 java.lang.ref 的一般文档包裹。如果对象只能通过 SoftReference
访问,它们将在发生内存不足错误之前被垃圾回收。但是请注意,VM 不需要在此类事件发生之前保留这些引用,也不需要对它们的清除顺序做出任何保证。您最好将它们与某种形式的持久性结合起来。
关于java - 在内存不足之前做一些事情,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3124496/