
-----Original Message----- From: boost-bounces@lists.boost.org [mailto:boost-bounces@lists.boost.org] On Behalf Of Alexander Terekhov
Is everyone convinced that propagating the exception into the joining thread is the right behavior or even semantically sensible?
I'm convinced that propagating *unexpected* exceptions into the joining thread is totally wrong and insensible.
I agree with that completely. I think we need a tool that: 1) Can be used across boundaries (inside one process) that exceptions cannot pass. I.E. threads, other languages (like Python, VB), or OS callbacks like windows message handlers. 2) Can be provided with a specify a set of exceptions to be caught across this boundary. 3) Can relay some information to the caller about which exception was caught. Candidates currently are copies of the exception, with the risk of slicing, or cloning, which is intrusive. I don't have any opinion off of the top of my head about whether or not this mechanism should automatically throw the copies or clones of these exceptions. In the case of thread groups it seems like a list of exceptions would be better. Propagation feels more appropriate if you want to think of one thread (or a windows modal dialog) returning a value.