如何捕获在不同线程内引发的RuntimeException?

时间:2016-02-15 23:03:01

标签: java multithreading

我正在做的一些伪代码,

var signUpEmail = document.getElementById('signUpEmail').value;

但是当抛出异常时,我真的不确定如何抓住它?有什么想法吗?

1 个答案:

答案 0 :(得分:3)

从字面上讲,你绝对不能。例外是特定于线程的构造。您需要在Java中进行任何其他形式的线程间通信。

当然,这是唯一有意义的事情:异常抛出是一种从堆栈中弹出的控制流机制。如果在一个线程中发生异常,那么您希望另一个线程做什么?突然终止然后跳转到一些不相关的异常处理代码?

当然,您可能需要另一块代码(即类)来处理异常,但这不是代码运行的线程的问题。这当然是可能的,而IIRC涉及让异常传播并使用Thread.uncaughtExceptionHandler作为全局路由器。