Hi, I am trying to use the ActiveMQ CPP 2.0 library to develop an XPCOM component to enable Mozilla XULRunner to use JMS messaging.
However, one problem I face is, when the ActiveMQ Server is down, and the onException function of the ExceptionListener is invoked, I try to close the session and connection. Regardless of whether I call 'session->close()' or 'delete session', I will get Unhandled Exceptions (this only appears during debugging. If I run without debugging, my entire Mozilla XULRunner client will exit). Is there anyway to gracefully cleanup both the Session and Connection variables without getting these Unhandled Exceptions? Otherwise, I can live with not deleting Session and Connection variables, but that will cause a memory leak in the long run. I am using Microsoft Visual C++ 2005 Express Edition. Below is the exception I get: Unhandled exception at 0x7c937a50 in xulrunner.exe: 0xC00000FD: Stack overflow. And the Call Stack: ntdll.dll!7c937a50() [Frames below may be incorrect and/or missing, no symbols loaded for ntdll.dll] ntdll.dll!7c90d4ea() ntdll.dll!7c9180ff() ntdll.dll!7c911bff() ntdll.dll!7c91825d() ntdll.dll!7c911538() ntdll.dll!7c911596() ntdll.dll!7c9106eb() msvcr80d.dll!10204bc0() msvcr80d.dll!102354d0() msvcr80d.dll!1023516b() msvcr80d.dll!10235279() msvcr80d.dll!1023528a() ntdll.dll!7c910e91() ntdll.dll!7c91056d() msvcr80d.dll!1024d197() msvcr80d.dll!1024d394() msvcr80d.dll!1024bd5d() msvcr80d.dll!1024bd5d() msvcr80d.dll!1024bd5d() msvcr80d.dll!1024cd2d() msvcr80d.dll!1024c6a7() msvcr80d.dll!1024c800() msvcr80d.dll!10204bc0() msvcr80d.dll!1024c374() msvcr80d.dll!1024bdfc() ntdll.dll!7c9037bf() ntdll.dll!7c90378b() ntdll.dll!7c937860() msvcp80d.dll!104f97cb() msvcp80d.dll!10491530() msvcp80d.dll!104fef2d() ntdll.dll!7c911596() ntdll.dll!7c9106eb() ntdll.dll!7c90eafa() kernel32.dll!7c812a5b() ntdll.dll!7c9106eb() kernel32.dll!7c812a5b() ntdll.dll!7c9106eb() ntdll.dll!7c919b3f() ntdll.dll!7c919aeb() ntdll.dll!7c911538() ntdll.dll!7c919aeb() ntdll.dll!7c919d27() ntdll.dll!7c919a9c() ntdll.dll!7c919b3f() ntdll.dll!7c919aeb() kernel32.dll!7c812a5b() SxJMSClient.dll!std::vector<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int>,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int> > >::_Ucopy<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int> *>() + 0x1f bytes msvcr80d.dll!10207ea0() SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::oneway() + 0xa3 bytes msvcr80d.dll!1024df27() msvcr80d.dll!1024bed9() msvcr80d.dll!1024ce75() msvcr80d.dll!10205089() msvcr80d.dll!1024cd8a() msvcr80d.dll!1024c6a7() msvcr80d.dll!1024c800() msvcr80d.dll!10204bc0() msvcr80d.dll!1024c374() msvcr80d.dll!1024bdfc() ntdll.dll!7c9037bf() ntdll.dll!7c90378b() ntdll.dll!7c937860() msvcp80d.dll!104f97cb() msvcp80d.dll!10491530() msvcp80d.dll!104fef2d() ntdll.dll!7c911596() ntdll.dll!7c9106eb() ntdll.dll!7c90eafa() kernel32.dll!7c812a5b() ntdll.dll!7c9106eb() kernel32.dll!7c812a5b() ntdll.dll!7c9106eb() ntdll.dll!7c919b3f() ntdll.dll!7c919aeb() ntdll.dll!7c911538() ntdll.dll!7c919aeb() ntdll.dll!7c919d27() ntdll.dll!7c919a9c() ntdll.dll!7c919b3f() ntdll.dll!7c919aeb() kernel32.dll!7c812a5b() SxJMSClient.dll!std::vector<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int>,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int> > >::_Ucopy<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int> *>() + 0x1f bytes msvcr80d.dll!10207ea0() SxJMSClient.dll!activemq::connector::openwire::OpenWireFormatNegotiator::oneway() + 0x178 bytes msvcr80d.dll!1024df27() msvcr80d.dll!1024bed9() msvcr80d.dll!1024ce75() msvcr80d.dll!10205089() msvcr80d.dll!1024cd8a() msvcr80d.dll!1024c6a7() msvcr80d.dll!1024c800() msvcr80d.dll!10204bc0() msvcr80d.dll!1024c374() msvcr80d.dll!1024bdfc() ntdll.dll!7c9037bf() ntdll.dll!7c90378b() ntdll.dll!7c937860() msvcp80d.dll!104f97cb() msvcp80d.dll!10491530() msvcp80d.dll!104fef2d() ntdll.dll!7c911596() ntdll.dll!7c9106eb() ntdll.dll!7c90eafa() kernel32.dll!7c812a5b() ntdll.dll!7c9106eb() kernel32.dll!7c812a5b() ntdll.dll!7c9106eb() ntdll.dll!7c919b3f() ntdll.dll!7c919aeb() ntdll.dll!7c911538() ntdll.dll!7c919aeb() ntdll.dll!7c919d27() ntdll.dll!7c919a9c() ntdll.dll!7c919b3f() ntdll.dll!7c919aeb() kernel32.dll!7c812a5b() SxJMSClient.dll!std::vector<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int>,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int> > >::_Ucopy<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int> *>() + 0x1f bytes msvcr80d.dll!10207ea0() SxJMSClient.dll!activemq::transport::ResponseCorrelator::oneway() + 0x153 bytes msvcr80d.dll!1024df27() msvcr80d.dll!1024bed9() msvcr80d.dll!1024ce75() msvcr80d.dll!10205089() msvcr80d.dll!1024cd8a() msvcr80d.dll!1024c6a7() msvcr80d.dll!1024c800() msvcr80d.dll!10204bc0() msvcr80d.dll!1024c374() msvcr80d.dll!1024bdfc() ntdll.dll!7c9037bf() ntdll.dll!7c90378b() ntdll.dll!7c937860() msvcp80d.dll!104f97cb() msvcp80d.dll!10491530() msvcp80d.dll!104fef2d() ntdll.dll!7c911596() ntdll.dll!7c9106eb() ntdll.dll!7c90eafa() kernel32.dll!7c812a5b() ntdll.dll!7c9106eb() kernel32.dll!7c812a5b() ntdll.dll!7c9106eb() ntdll.dll!7c919b3f() ntdll.dll!7c919aeb() ntdll.dll!7c911538() ntdll.dll!7c919aeb() ntdll.dll!7c919d27() ntdll.dll!7c919a9c() ntdll.dll!7c919b3f() ntdll.dll!7c919aeb() kernel32.dll!7c812a5b() SxJMSClient.dll!std::vector<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int>,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int> > >::_Ucopy<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int> *>() + 0x1f bytes msvcr80d.dll!10207ea0() SxJMSClient.dll!activemq::connector::openwire::OpenWireCommandWriter::writeCommand() + 0x154 bytes msvcr80d.dll!1024df27() msvcr80d.dll!1024bed9() msvcr80d.dll!1024ce75() msvcr80d.dll!10205089() msvcr80d.dll!1024cd8a() msvcr80d.dll!1024c6a7() msvcr80d.dll!1024c800() msvcr80d.dll!10204bc0() msvcr80d.dll!1024c374() msvcr80d.dll!1024bdfc() ntdll.dll!7c9037bf() ntdll.dll!7c90378b() ntdll.dll!7c937860() msvcp80d.dll!104f97cb() msvcp80d.dll!10491530() msvcp80d.dll!104fef2d() ntdll.dll!7c911596() ntdll.dll!7c9106eb() ntdll.dll!7c90eafa() kernel32.dll!7c812a5b() ntdll.dll!7c9106eb() kernel32.dll!7c812a5b() ntdll.dll!7c9106eb() ntdll.dll!7c919b3f() ntdll.dll!7c919aeb() ntdll.dll!7c911538() ntdll.dll!7c919aeb() ntdll.dll!7c919d27() ntdll.dll!7c919a9c() ntdll.dll!7c919b3f() ntdll.dll!7c919aeb() kernel32.dll!7c812a5b() SxJMSClient.dll!std::vector<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int>,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int> > >::_Ucopy<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int> *>() + 0x1f bytes msvcr80d.dll!10207ea0() SxJMSClient.dll!activemq::connector::openwire::OpenWireFormat::marshal() + 0x544 bytes msvcr80d.dll!1024df27() msvcr80d.dll!1024bed9() msvcr80d.dll!1024ce75() msvcr80d.dll!10205089() msvcr80d.dll!1024cd8a() msvcr80d.dll!1024c6a7() msvcr80d.dll!1024c800() msvcr80d.dll!10204bc0() msvcr80d.dll!1024c374() msvcr80d.dll!1024bdfc() ntdll.dll!7c9037bf() ntdll.dll!7c90378b() ntdll.dll!7c937860() msvcp80d.dll!104f97cb() msvcp80d.dll!10491530() msvcp80d.dll!104fef2d() msvcp80d.dll!104fef1d() ntdll.dll!7c911596() ntdll.dll!7c9106eb() ntdll.dll!7c90eafa() kernel32.dll!7c812a5b() ntdll.dll!7c9106eb() kernel32.dll!7c812a5b() ntdll.dll!7c9106eb() ntdll.dll!7c919b3f() ntdll.dll!7c919aeb() ntdll.dll!7c911538() ntdll.dll!7c919aeb() ntdll.dll!7c919d27() ntdll.dll!7c919a9c() ntdll.dll!7c919b3f() ntdll.dll!7c919aeb() kernel32.dll!7c812a5b() SxJMSClient.dll!std::vector<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int>,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int> > >::_Ucopy<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int> *>() + 0x1f bytes msvcr80d.dll!10207ea0() SxJMSClient.dll!activemq::io::DataOutputStream::writeInt() + 0xf6 bytes msvcr80d.dll!1024df27() msvcr80d.dll!1024bed9() msvcr80d.dll!1024ce75() msvcr80d.dll!10205089() msvcr80d.dll!1024cd8a() msvcr80d.dll!1024c6a7() msvcr80d.dll!1024c800() msvcr80d.dll!10204bc0() msvcr80d.dll!1024c374() msvcr80d.dll!1024bdfc() ntdll.dll!7c9037bf() ntdll.dll!7c90378b() ntdll.dll!7c937860() msvcp80d.dll!104f97cb() msvcp80d.dll!10491530() msvcp80d.dll!104fef2d() ntdll.dll!7c911596() ntdll.dll!7c9106eb() ntdll.dll!7c90eafa() kernel32.dll!7c812a5b() ntdll.dll!7c9106eb() kernel32.dll!7c812a5b() ntdll.dll!7c9106eb() ntdll.dll!7c919b3f() ntdll.dll!7c919aeb() ntdll.dll!7c911538() ntdll.dll!7c919aeb() ntdll.dll!7c919d27() ntdll.dll!7c919a9c() ntdll.dll!7c919b3f() ntdll.dll!7c919aeb() kernel32.dll!7c812a5b() SxJMSClient.dll!std::vector<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int>,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int> > >::_Ucopy<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int> *>() + 0x1f bytes msvcr80d.dll!10207ea0() SxJMSClient.dll!activemq::io::DataOutputStream::write() + 0xaa bytes msvcr80d.dll!1024df27() msvcr80d.dll!1024bed9() msvcr80d.dll!1024ce75() msvcr80d.dll!10205089() msvcr80d.dll!1024cd8a() msvcr80d.dll!1024c6a7() ntdll.dll!7c911596() msvcr80d.dll!10204bc0() msvcr80d.dll!1024c374() msvcr80d.dll!1024bdfc() ntdll.dll!7c9037bf() ntdll.dll!7c90378b() ntdll.dll!7c937860() msvcp80d.dll!104fef1d() msvcp80d.dll!104fef2d() msvcp80d.dll!104fef1d() msvcp80d.dll!104fef2d() msvcp80d.dll!104f97cb() msvcp80d.dll!10491530() msvcp80d.dll!104e87ff() ntdll.dll!7c90eafa() kernel32.dll!7c812a5b() ntdll.dll!7c9106eb() kernel32.dll!7c812a5b() ntdll.dll!7c9106eb() ntdll.dll!7c919b3f() ntdll.dll!7c919aeb() ntdll.dll!7c911538() ntdll.dll!7c919aeb() ntdll.dll!7c919d27() ntdll.dll!7c919a9c() ntdll.dll!7c919b3f() ntdll.dll!7c919aeb() kernel32.dll!7c812a5b() msvcr80d.dll!10207ea0() SxJMSClient.dll!activemq::network::SocketOutputStream::write() + 0xb3 bytes msvcr80d.dll!102622a1() SxJMSClient.dll!activemq::io::BufferedOutputStream::emptyBuffer() + 0x44 bytes SxJMSClient.dll!activemq::io::BufferedOutputStream::write() + 0x1d bytes SxJMSClient.dll!activemq::io::DataOutputStream::write() + 0x5c bytes SxJMSClient.dll!activemq::io::DataOutputStream::writeInt() + 0x5e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireFormat::marshal() + 0x405 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireCommandWriter::writeCommand() + 0xb6 bytes SxJMSClient.dll!activemq::transport::IOTransport::oneway() + 0x185 bytes SxJMSClient.dll!activemq::transport::TransportFilter::oneway() + 0x1e bytes SxJMSClient.dll!activemq::transport::ResponseCorrelator::oneway() + 0xd9 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireFormatNegotiator::oneway() + 0xfe bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::oneway() + 0x5c bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::disposeOf() + 0x82 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x416 bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::closeResource() + 0x44d bytes SxJMSClient.dll!activemq::connector::BaseConnectorResource::close() + 0x7e bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::~OpenWireSessionInfo() + 0x40 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireSessionInfo::`scalar deleting destructor'() + 0xf bytes SxJMSClient.dll!activemq::core::ActiveMQSession::close() + 0x251 bytes SxJMSClient.dll!activemq::core::ActiveMQSession::~ActiveMQSession() + 0x6c bytes SxJMSClient.dll!activemq::core::ActiveMQSession::`scalar deleting destructor'() + 0xf bytes > SxJMSClient.dll!JMSConnectionObject::cleanup() Line 105 + 0x37 bytes > C++ SxJMSClient.dll!JMSConnectionObject::onException(const cms::CMSException & ex={...}) Line 140 + 0x13 bytes C++ SxJMSClient.dll!activemq::core::ActiveMQConnection::onException() + 0x27 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::fire() + 0x5d bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireConnector::onCommand() + 0x4e7 bytes SxJMSClient.dll!activemq::transport::TransportFilter::fire() + 0x54 bytes SxJMSClient.dll!activemq::connector::openwire::OpenWireFormatNegotiator::onCommand() + 0x14a bytes SxJMSClient.dll!activemq::transport::TransportFilter::fire() + 0x54 bytes SxJMSClient.dll!activemq::transport::ResponseCorrelator::onCommand() + 0x5a bytes SxJMSClient.dll!activemq::transport::TransportFilter::fire() + 0x54 bytes SxJMSClient.dll!activemq::transport::TransportFilter::onCommand() + 0x16 bytes SxJMSClient.dll!activemq::transport::IOTransport::fire() + 0x8a bytes SxJMSClient.dll!activemq::transport::IOTransport::run() + 0x87 bytes SxJMSClient.dll!activemq::concurrent::Thread::runCallback() + 0x4f bytes msvcr80d.dll!102048d1() msvcr80d.dll!10204877() kernel32.dll!7c80b683() Thanks in advanced. Regards, Kok Hoor -- View this message in context: http://www.nabble.com/ActiveMQ-CPP-2.0-graceful-cleanup-of-Session-and-Connection-tf3687911s2354.html#a10309769 Sent from the ActiveMQ - User mailing list archive at Nabble.com.