diff options
| author | Andrew Stitcher <astitcher@apache.org> | 2012-07-05 19:38:26 +0000 |
|---|---|---|
| committer | Andrew Stitcher <astitcher@apache.org> | 2012-07-05 19:38:26 +0000 |
| commit | dbc5b2128daa9072c8cd186686078ca392edfb9b (patch) | |
| tree | 15907ae7c2867f2b8648b530ae911a2946d7cef5 /cpp/src/qpid/ha/QueueReplicator.cpp | |
| parent | 9d587a132403026b2a99dc7295be0f8b1fdf337a (diff) | |
| download | qpid-python-dbc5b2128daa9072c8cd186686078ca392edfb9b.tar.gz | |
NO-JIRA: Fix for potential Timer deadlock issue:
- Previously we used a mutex to prevent cancelling a TimerTask whilst it
was still executing from within its callback in another thread.
This violates the principle that you shouldn't hold locks when calling
the arbitrary code in a callback, and so is subject to potential
deadlock problems.
- This fix only works if no timer callback calls TimerTask::cancel();
this is true with the current code. And there is no good reason to
call cancel() from within a callback, as cancel is the default
behviour in any case - you have to specifically reschedule a
recurring timer.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1357827 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/ha/QueueReplicator.cpp')
0 files changed, 0 insertions, 0 deletions
