java – 如果运行该函数的线程中断,finally块是否执行?
|
如果我有一个具有try / finally部分的功能,并且运行它的线程在try块中被中断,finally块是否在中断实际发生之前执行?
解决方法
According to the Java Tutorials,“如果执行try或catch代码的线程被中断或者被杀死,即使整个应用程序整体继续,finally块可能不会执行.
这是完整的段落:
class Thread1 implements Runnable {
@Override
public void run() {
try {
Thread.sleep(10000);
} catch (InterruptedException e) {
e.printStackTrace();
} finally {
System.out.println("finally executed");
}
}
}
… t1.start(); t1.interrupt(); 它打印 – 最后执行 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
