activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Endre StĂžlsvik <Apa...@Stolsvik.com>
Subject Lingering "ActiveMQ Scheduler" threads
Date Sun, 12 Nov 2006 10:31:04 GMT
Hi!

After shutting down an instance of ClassPathXmlApplicationContext that 
defines a Broker, and getting these lines in the log (amongst others, of 
course):

222953 [main] DEBUG 
org.springframework.beans.factory.support.DisposableBeanAdapter  - 
Applying DestructionAwareBeanPostProcessors to bean with name 
'org.apache.activemq.xbean.XBeanBrokerService'
222953 [main] DEBUG 
org.springframework.beans.factory.support.DisposableBeanAdapter  - 
Invoking destroy() on bean with name 
'org.apache.activemq.xbean.XBeanBrokerService'
222953 [main] INFO org.apache.activemq.broker.BrokerService  - ActiveMQ 
Message Broker (localhost, ID:endrehome-41116-1163286463312-0:1) is 
shutting down
227250 [main] INFO org.apache.activemq.broker.TransportConnector  - 
Connector tcp://localhost:54000 Stopped
227250 [main] INFO org.apache.activemq.broker.BrokerService  - ActiveMQ 
JMS Message Broker (localhost, ID:endrehome-41116-1163286463312-0:1) stopped
227250 [main] DEBUG 
org.springframework.beans.factory.support.DisposableBeanAdapter  - 
Invoking custom destroy method on bean with name 
'org.apache.activemq.xbean.XBeanBrokerService'
227250 [main] DEBUG 
org.springframework.beans.factory.support.DefaultListableBeanFactory  - 
Retrieved dependent beans for bean '(inner bean)#1': 
[org.apache.activemq.xbean.XBeanBrokerService]
227250 [main] DEBUG 
org.springframework.beans.factory.support.DisposableBeanAdapter  - 
Applying DestructionAwareBeanPostProcessors to bean with name '(inner 
bean)#1'

.. there are still 5 threads named "ActiveMQ Scheduler" running.

Broker is configured simple as follows:
<amq:broker useJmx="false" persistent="false">
   <amq:transportConnectors>
     <amq:transportConnector uri="tcp://localhost:54000" />
   </amq:transportConnectors>
</amq:broker>

The reason for noticing, is that i have this "reboot" functionality in 
an application, and after the full springContext.close(), before the new 
ClassPathXmlApplicationContext(<same spring config file>), these threads 
are still around.

However, repeatedly "rebooting" does not build up a whole bunch of 
these, which leads me to believe that ActiveMQ actually let them linger 
on purpose, noticing that they're there already on next startup..

On VM-exit (simply exiting main, after calling close on the Spring 
context), the whole things shuts nicely down (shutdownhooks?).

Is this on purpose, and if so, is there a way that I can get ActiveMQ to 
_really really_ shut fully down? (Underlying point is that I'd like the 
whole thing to be fully GC-able, basically not referencing any object 
whatsoever - I want to have full control of the resource usage here..).

Thanks,
Kind regards,
Endre.

Mime
View raw message