summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/cluster/ClusterTimer.h
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2010-02-26 16:47:23 +0000
committerAlan Conway <aconway@apache.org>2010-02-26 16:47:23 +0000
commit381ff27cacc1f72a42504e8e698d33b59d145b30 (patch)
treeedacbecabda74ac97d788e76d0071dfb5458618e /cpp/src/qpid/cluster/ClusterTimer.h
parenteecd6b99d4db4b83ba3edd2cbad4bfa08a4bfec8 (diff)
downloadqpid-python-381ff27cacc1f72a42504e8e698d33b59d145b30.tar.gz
Fix cluster abort on shutdown in ClusterTimer::fire.
The cluster destructor was not deleting the ClusterTimer set on the broker, so this timer had a dangling pointer to the cluster. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@916751 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/cluster/ClusterTimer.h')
-rw-r--r--cpp/src/qpid/cluster/ClusterTimer.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/cpp/src/qpid/cluster/ClusterTimer.h b/cpp/src/qpid/cluster/ClusterTimer.h
index 395e505451..69f6c622e4 100644
--- a/cpp/src/qpid/cluster/ClusterTimer.h
+++ b/cpp/src/qpid/cluster/ClusterTimer.h
@@ -30,6 +30,12 @@ namespace cluster {
class Cluster;
+/**
+ * Timer implementation that executes tasks consistently in the
+ * deliver thread across a cluster. Task is not executed when timer
+ * fires, instead the elder multicasts a wakeup. The task is executed
+ * when the wakeup is delivered.
+ */
class ClusterTimer : public sys::Timer {
public:
ClusterTimer(Cluster&);