不要停止多线程/当一个线程死亡时启动线程



嗨,我想知道如何永远不停止多线程Java应用程序。如果run方法中的异常被捕获,线程就会死亡,我能避免吗?如果没有,我能知道我的一个线程什么时候死了,然后我可以启动另一个线程吗?

这是主要的

for (int i=0; i<n; i++) 
{ 
MyClass object = new MyClass();
Thread myThread = new Thread(object); 
myThread.start();
} 

这是实现可运行的MyClass

@Override
public void run() {
try {
theLoopMethod();
} catch (Exception e) {
System.out.println("error: check errors.txt");
}

回答问题1:

如果run方法中的异常被捕获,线程就会死亡,我能避免吗

您可以将代码包装在一个无休止的while循环中,也可以实际修复代码,这样就不会引发异常。

while (true) {
try {
theLoopMethod();
} catch (Exception e) {
System.out.println("error: check errors.txt");
}
}

最新更新