From 564d179640cf49feeb8ff84133f892499afb0e65 Mon Sep 17 00:00:00 2001 From: Andrew Stitcher Date: Mon, 4 May 2009 15:55:21 +0000 Subject: Refactored the DispatchHandle/Poller code to remove a long standing set of race conditions. - Changed Poller naming for better clarity with new semantics. - Changed Poller semantics to avoid DispatchHandle keeping so much state - Changed Poller so that it will never re-enable a Handle until Poller::wait is called again on the same thread that returned the Handle. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@771338 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/cluster/PollerDispatch.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'cpp/src/qpid/cluster/PollerDispatch.cpp') diff --git a/cpp/src/qpid/cluster/PollerDispatch.cpp b/cpp/src/qpid/cluster/PollerDispatch.cpp index 528a21481c..c8e28c0d51 100644 --- a/cpp/src/qpid/cluster/PollerDispatch.cpp +++ b/cpp/src/qpid/cluster/PollerDispatch.cpp @@ -36,6 +36,10 @@ PollerDispatch::PollerDispatch(Cpg& c, boost::shared_ptr p, ) {} +PollerDispatch::~PollerDispatch() { + dispatchHandle.stopWatch(); +} + void PollerDispatch::start() { dispatchHandle.startWatch(poller); } -- cgit v1.2.1