summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/BrokerQueue.h
diff options
context:
space:
mode:
authorCarl C. Trieloff <cctrieloff@apache.org>2007-07-17 20:46:45 +0000
committerCarl C. Trieloff <cctrieloff@apache.org>2007-07-17 20:46:45 +0000
commit1d1f5c021b620f01c6bcb5fbded0eb1b50e445ab (patch)
tree1c3f2c94806c73b1c6a93c4350ebf2f23b26c981 /cpp/src/qpid/broker/BrokerQueue.h
parent55b232f3d2448dab91c926ba171cc5fd9b5a04c5 (diff)
downloadqpid-python-1d1f5c021b620f01c6bcb5fbded0eb1b50e445ab.tar.gz
Updated queue class, can run dispatch on seperate thread or on
thread servicing the request. current set to use a worker - better test results. controlled by setting serilizable true - no worker, false, use a worker git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@557052 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/broker/BrokerQueue.h')
-rw-r--r--cpp/src/qpid/broker/BrokerQueue.h7
1 files changed, 3 insertions, 4 deletions
diff --git a/cpp/src/qpid/broker/BrokerQueue.h b/cpp/src/qpid/broker/BrokerQueue.h
index 667604eea9..415e22f04c 100644
--- a/cpp/src/qpid/broker/BrokerQueue.h
+++ b/cpp/src/qpid/broker/BrokerQueue.h
@@ -30,6 +30,7 @@
#include "Consumer.h"
#include "BrokerMessage.h"
#include "qpid/framing/FieldTable.h"
+#include "qpid/sys/Serializer.h"
#include "qpid/sys/Monitor.h"
#include "PersistableQueue.h"
#include "QueuePolicy.h"
@@ -65,21 +66,19 @@ namespace qpid {
const ConnectionToken* const owner;
Consumers consumers;
Messages messages;
- bool queueing;
- bool dispatching;
int next;
mutable qpid::sys::RWlock consumerLock;
- mutable qpid::sys::RWlock messageLock;
+ mutable qpid::sys::Mutex messageLock;
Consumer* exclusive;
mutable uint64_t persistenceId;
framing::FieldTable settings;
std::auto_ptr<QueuePolicy> policy;
QueueBindings bindings;
boost::shared_ptr<Exchange> alternateExchange;
+ qpid::sys::Serializer serializer;
void pop();
void push(Message::shared_ptr& msg);
- bool startDispatching();
bool dispatch(Message::shared_ptr& msg);
void setPolicy(std::auto_ptr<QueuePolicy> policy);