On Wed, Jul 16, 2008 at 1:20 PM, Anthony Williams
"Emil Dotchevski"
writes: Yet to be released Boost 1.36 includes the new Exception library which among other things supports transporting of exceptions between threads.
This is true. However, users need to be aware that there are currently no mechanisms in place with the thread library to do this automatically: if you want to transport exceptions you need to catch them with boost.Exception yourself, and then transport them.
My futures library (http://www.justsoftwaresolutions.co.uk/threading/updated-implementation-of-c...) which is on the Boost review queue provides a packaged_task which can be used with boost.thread to transport exceptions to the thread that is waiting for the result.
Yes, futures is a higher level library. Boost Exception is very basic, perhaps at the same level as boost::thread. Just to clarify, this is how boost::thread and boost::exception can be used together to transport exceptions between threads: http://svn.boost.org/svn/boost/trunk/libs/exception/doc/tutorial_exception_p... Emil Dotchevski Reverge Studios, Inc. http://www.revergestudios.com/reblog/index.php?n=ReCode