【发布时间】:2011-09-01 03:56:18
【问题描述】:
我的 Java 代码包含一个方法 (getPermutations),其处理需要大量内存 (Complexity O(n!)),因此可能会引发 OutOfMemoryError。 重要的代码是这样的:
ArrayList<ArrayList<Station>> permutations = getPermutations(stations);
我不想在我的特定机器上增加堆内存大小,我也不能在其他机器上更改它。 我正在寻找的是针对此错误的某种异常处理(我很清楚通常不应该捕获错误或 throwable)。
所以我想用适当的(图形)消息对 OutOfMemoryError 做出反应,并防止我的小程序崩溃。
SwingWorker 是正确的方法吗,应该如何使用它,或者有更好的替代方案吗?
提前致谢:-)
【问题讨论】:
-
有一个相关的问题可能会有所帮助:“Is it possible to catch out of memory exception in java?” stackoverflow.com/questions/1692230/…
标签: java memory-management error-handling out-of-memory