Java措施长时间运行时自动退出大概的原因
我有一个Java措施,启动了七个线程,这些线程都形如:
public void run() {
while (true) {
try {
......
} catch (Throwable t) {
t.printStackTrace();
}
}
}
但却常常跑着跑着,跑了几个小时后java退出,大概是哪些原因?
我揣摩是我本身的代码或是我利用的库在那边挪用了System.exit(),可是我用措施将System.exit()hook住了,发明没有人挪用这个函数。这个处事器只有我一小我私家在用,也不会有人kill。Java达人们资助想想,尚有大概是什么原因?
复原:
假如是应用,一般有2个大概
1 JVM BUG,这个简朴,进级你的JVM就好了
2 内存溢出,呵呵,我猜这个大概性最大。 你应该启动东西监控一下措施的内存利用环境, jconsole就行