public virtual void Shutdown()
{
lock (m_lock)
{
// stop the publishing thread.
m_shutdownEvent.Set();
m_publishingThread = null;
// dispose of publish queues.
foreach (SessionPublishQueue queue in m_publishQueues.Values)
{
queue.Dispose();
}
m_publishQueues.Clear();
// dispose of subscriptions objects.
foreach (Subscription subscription in m_subscriptions.Values)
{
subscription.Dispose();
}
m_subscriptions.Clear();
}
}