Well, it depends what you want to do when an exception occurs. If in thread 2 you want to notify a user interface of e-mails that didn't get sent, and the user interface is part of thread 1's context, then you should simply pass the user interface to thread 2 when you start it, and let thread 2 deal with the user interface itself.
The mind is a strange and wonderful thing. I'm not sure that it will ever be able to figure itself out, everything else, maybe. From the atom to the universe, everything, except itself.