我编写了一个需要处理数千个文本文件的java程序(都需要加载到内存中).它可以使用多达123个输入文件,但是当我运行它来处理大约5000个文件时,它会在路中间意外终止,而不会给出任何错误消息/异常.谁能给我一些可能出错的线索?
我在具有2GB RAM的Mac OS Leopard上使用jdk1.6.
鉴于这是您的程序,我建议您执行以下操作:
首先,更改main方法,以便所有操作都在报告所有未捕获异常的 try/catch 块中完成;例如这样的东西:
public static void main(String[] arghhhhh) {
try {
...
} catch (Throwable ex) {
System.err.println("Uncaught exception - " + ex.getMessage());
ex.printStackTrace(System.err);
}
}
Run Code Online (Sandbox Code Playgroud)
其次,通过捕获而不是报告来寻找可能“压制”意外异常的任何地方。
第三,寻找你可以System.exit()默默打电话的地方。这也可能发生在图书馆中......如果你使用的是一个写得不好的图书馆。
如果这些措施没有给您答案,请尝试弄清楚应用程序是如何退出的
| 归档时间: |
|
| 查看次数: |
19808 次 |
| 最近记录: |