activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Timothy Bish <tabish...@gmail.com>
Subject Re: Threads started in ActiveMQCPP
Date Fri, 12 Sep 2014 18:07:17 GMT
On 09/12/2014 01:37 PM, jeffrey wrote:
> tabish121@gmail.com wrote
>> On 09/09/2014 05:39 PM, jeffrey wrote:
>>> Hi,
>>>
>>> When you call activemq::library::ActiveMQCPP::initializeLibrary(); there
>>> are
>>> multiple threads that get initalized in the process space.  Is there any
>>> document or reference listing what the purpose of each of these threads
>>> are?
>>> Is there any configuration or parameters that can be used to control
>>> which
>>> threads and how many threads get started by the library?
>>>
>>> Thanks.
>>>
>>>
>>>
>>> --
>>> View this message in context:
>>> http://activemq.2283324.n4.nabble.com/Threads-started-in-ActiveMQCPP-tp4685430.html
>>> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>>>
>> There's no configuration for this.  The only documentation would be the
>> source code itself.
>>
>> -- 
>> Tim Bish
>> Sr Software Engineer | RedHat Inc.
>> tim.bish@
>>   | www.redhat.com
>> skype: tabish121 | twitter: @tabish121
>> blog: http://timbish.blogspot.com/
>
> I did a little more analysis and found that the threads start at a later
> time.  When I create a connection object with this line
> *consumerConnection = connectionFactory->createConnection();*
> Six threads are created. A seventh is created with the line
> *consumer = consumerSession->createConsumer( consumerDestination );*
> I could understand 2, but I don't know why there are 6 threads created for a
> connection.  Can you explain the 6 threads off the top of your head?
>
>
>
> --
> View this message in context: http://activemq.2283324.n4.nabble.com/Threads-started-in-ActiveMQCPP-tp4685430p4685515.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
Depends a bit on the URI you are using.

In general there would be:

* The Connection Async processing handler
* The TcpTransport Read thread
* The Inactivity monitor heartbeat thread.
* The FailoverTransport reconnect thread.
* The Session linked dispatch thread.

Plus one or two others that I'm forgetting that handle other async work 
needed.

-- 
Tim Bish
Sr Software Engineer | RedHat Inc.
tim.bish@redhat.com | www.redhat.com
skype: tabish121 | twitter: @tabish121
blog: http://timbish.blogspot.com/


Mime
View raw message