On Mon, Jan 11, 2010 at 5:48 AM, Gordon Sim <[email protected]> wrote: > Note that there is a problem with SubscriptionManager::start() in that you > are unable to handle any exceptions thrown during dispatching. For that > reason I would advocate using SubscriptionManager::run(), starting your own > thread for it if so desired.
I ran into this recently, and by "this" I mean that it appears impossible to catch exceptions thrown when using the async SubscriptionManager methods. Is this actually the case or am I missing something? Is there a way to join the async thread to handle the exception or some way to otherwise register an exception handler? Connection exceptions are thrown by the async threads when the broker process is restarted. Since no exception handler is present std::terminate() is called which brings down the whole client application. Is the only solution to this to bring my own thread where I can wrap exception handlers around the synchronous SubscriptionManager methods? --jason --------------------------------------------------------------------- Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:[email protected]
