On 01/17/2014 08:36 AM, Xiong Zou wrote:
Hi Gordon,
An initial update on the test result:
1. Change m_subscriptions.stop(); to m_subscriptions.wait();
You need them both, keep the stop(), then add wait() after it. The
stop() tells the thread to stop, the wait() waits for it to actually exit.
Thread stuck at m_subscriptions.wait(), no further process.
2. add m_session.close(); before m_connection.close();
Invalid argument
IT.OR.MD.CS.RMS.HA.Primary: ../include/qpid/sys/posix/Mutex.h:120:
void qpid::sys::Mutex::unlock(): Assertion `0' failed.
Abort (core dumped)
Hmm, that sounds like the session is not valid in some way....
3. After I enable to manually call m_subscriptions.cancel() as below, then
delete pListner; works well now.
for(unsigned int i; i < m_vecQueueUIDs.size(); i++)
{
if(!m_vecQueueUIDs[i].empty())
m_subscriptions.cancel(m_vecQueueUIDs[i]);
}
Ok, great!
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]