diff options
| author | Robert Godfrey <rgodfrey@apache.org> | 2013-09-25 13:53:57 +0000 |
|---|---|---|
| committer | Robert Godfrey <rgodfrey@apache.org> | 2013-09-25 13:53:57 +0000 |
| commit | fc2947e3e9274e38f5dff042b24a90f647a653ad (patch) | |
| tree | 454970aa2fd413358588825c0d028d479df22e18 /java | |
| parent | f5b179d474d3b7818a5549c14aeceba892229482 (diff) | |
| download | qpid-python-fc2947e3e9274e38f5dff042b24a90f647a653ad.tar.gz | |
QPID-5166 : Lazily create dispatcher thread in JMS Session implementation (patch from dingham@microsoft.com)
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1526177 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java')
| -rw-r--r-- | java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/SessionImpl.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/SessionImpl.java b/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/SessionImpl.java index 2ae67913fe..02982a9cec 100644 --- a/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/SessionImpl.java +++ b/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/SessionImpl.java @@ -140,8 +140,6 @@ public class SessionImpl implements Session, QueueSession, TopicSession _messageFactory = new MessageFactory(this);
- _dispatcherThread = new Thread(_dispatcher);
- _dispatcherThread.start();
}
public BytesMessageImpl createBytesMessage() throws IllegalStateException
@@ -384,6 +382,12 @@ public class SessionImpl implements Session, QueueSession, TopicSession final MessageConsumerImpl messageConsumer;
synchronized(_session.getEndpoint().getLock())
{
+ if(_dispatcherThread == null)
+ {
+ _dispatcherThread = new Thread(_dispatcher);
+ _dispatcherThread.start();
+ }
+
messageConsumer = new MessageConsumerImpl(destination, this, selector, noLocal);
addConsumer(messageConsumer);
if(_connection.isStarted())
|
