This question already has answers here: Catch a thread's exception in the caller thread? (20 answers)