[jboss-dev-forums] [Design of Messaging on JBoss (Messaging/JBoss)] - Re: Thread pools...

clebert.suconic@jboss.com do-not-reply at jboss.com
Tue Apr 14 14:38:58 EDT 2009


Please, ignore this...


I was seeing these references, when I was navigating through the memory using JVMTI. Those runnables were being executed at the same time the printReferences was called. If I waited 5 seconds to print the references, all of this went away.

<br>!--!-- FieldReference final java.lang.Runnable java.util.concurrent.Executors$RunnableAdapter.task=OBJ(java.util.concurrent.Executors$RunnableAdapter at 884010469)
  | <br>!--!--!-- FieldReference private final java.util.concurrent.Callable java.util.concurrent.FutureTask$Sync.callable=OBJ(java.util.concurrent.FutureTask$Sync at 1691493474)
  | <br>!--!--!--!-- FieldReference private final java.util.concurrent.FutureTask$Sync java.util.concurrent.FutureTask.sync=OBJ(java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask at 490829456)
  | <br>!--!--!--!--!-- arrayRef [Ljava.lang.Object;[6] id=@885978865
  | <br>!--!--!--!--!--!-- FieldReference private transient java.lang.Object[] java.util.PriorityQueue.queue=OBJ(java.util.PriorityQueue at 1602698930)
  | <br>!--!--!--!--!--!--!-- FieldReference private final java.util.PriorityQueue java.util.concurrent.DelayQueue.q=OBJ(java.util.concurrent.DelayQueue at 673532189)
  | <br>!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.DelayQueue::take
  | <br>!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.DelayQueue::take
  | <br>!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.DelayQueue::take
  | <br>!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.DelayQueue::take
  | <br>!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.DelayQueue::take
  | <br>!--!--!--!--!--!--!--!-- FieldReference private final java.util.concurrent.DelayQueue java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.dq=OBJ(java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue at 669197186)
  | <br>!--!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue::take
  | <br>!--!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue::take
  | <br>!--!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue::take
  | <br>!--!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue::take
  | <br>!--!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue::take
  | <br>!--!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue::take
  | <br>!--!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue::take
  | <br>!--!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue::take
  | <br>!--!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue::take
  | <br>!--!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue::take
  | <br>!--!--!--!--!--!--!--!--!-- FieldReference private final java.util.concurrent.BlockingQueue java.util.concurrent.ThreadPoolExecutor.workQueue=OBJ(java.util.concurrent.ScheduledThreadPoolExecutor at 1456146415)
  | <br>!--!--!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.ThreadPoolExecutor::getTask
  | <br>!--!--!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.ThreadPoolExecutor::getTask
  | <br>!--!--!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.ThreadPoolExecutor::getTask
  | <br>!--!--!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.ThreadPoolExecutor::getTask
  | <br>!--!--!--!--!--!--!--!--!--!-- Reference inside a method - java.util.concurrent.ThreadPoolExecutor::getTask
  | <br>!--!--!--!--!--!--!--!--!--!-- StaticFieldReference private static java.util.concurrent.ScheduledThreadPoolExecutor org.jboss.messaging.core.client.impl.ConnectionManagerImpl.pingExecutor
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference final java.util.concurrent.ThreadPoolExecutor java.util.concurrent.ThreadPoolExecutor$Worker.this$0=OBJ(java.util.concurrent.ThreadPoolExecutor$Worker at 431709193)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference final java.util.concurrent.ThreadPoolExecutor java.util.concurrent.ThreadPoolExecutor$Worker.this$0=OBJ(java.util.concurrent.ThreadPoolExecutor$Worker at 1871151428)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference final java.util.concurrent.ThreadPoolExecutor java.util.concurrent.ThreadPoolExecutor$Worker.this$0=OBJ(java.util.concurrent.ThreadPoolExecutor$Worker at 1155557696)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference final java.util.concurrent.ThreadPoolExecutor java.util.concurrent.ThreadPoolExecutor$Worker.this$0=OBJ(java.util.concurrent.ThreadPoolExecutor$Worker at 1608577782)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference final java.util.concurrent.ThreadPoolExecutor java.util.concurrent.ThreadPoolExecutor$Worker.this$0=OBJ(java.util.concurrent.ThreadPoolExecutor$Worker at 1567434291)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference final java.util.concurrent.ScheduledThreadPoolExecutor java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.this$0=OBJ(java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask at 729155693)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference private final java.util.concurrent.ScheduledExecutorService org.jboss.messaging.core.remoting.impl.RemotingConnectionImpl.pingExecutor=OBJ(org.jboss.messaging.core.remoting.impl.RemotingConnectionImpl at 148643588)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference final java.util.concurrent.ScheduledThreadPoolExecutor java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.this$0=OBJ(java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask at 490829456)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference private final java.util.concurrent.ScheduledExecutorService org.jboss.messaging.core.remoting.impl.RemotingConnectionImpl.pingExecutor=OBJ(org.jboss.messaging.core.remoting.impl.RemotingConnectionImpl at 1278255007)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference final java.util.concurrent.ScheduledThreadPoolExecutor java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.this$0=OBJ(java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask at 729302055)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference private final java.util.concurrent.ScheduledExecutorService org.jboss.messaging.core.remoting.impl.RemotingConnectionImpl.pingExecutor=OBJ(org.jboss.messaging.core.remoting.impl.RemotingConnectionImpl at 1690464956)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference final java.util.concurrent.ScheduledThreadPoolExecutor java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.this$0=OBJ(java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask at 435865682)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference private final java.util.concurrent.ScheduledExecutorService org.jboss.messaging.core.remoting.impl.RemotingConnectionImpl.pingExecutor=OBJ(org.jboss.messaging.core.remoting.impl.RemotingConnectionImpl at 527797457)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference final java.util.concurrent.ScheduledThreadPoolExecutor java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.this$0=OBJ(java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask at 1584397689)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference private final java.util.concurrent.ScheduledExecutorService org.jboss.messaging.core.remoting.impl.RemotingConnectionImpl.pingExecutor=OBJ(org.jboss.messaging.core.remoting.impl.RemotingConnectionImpl at 174736223)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference final java.util.concurrent.ScheduledThreadPoolExecutor java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.this$0=OBJ(java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask at 1181554512)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference private final java.util.concurrent.ScheduledExecutorService org.jboss.messaging.core.remoting.impl.RemotingConnectionImpl.pingExecutor=OBJ(org.jboss.messaging.core.remoting.impl.RemotingConnectionImpl at 605399375)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference final java.util.concurrent.ScheduledThreadPoolExecutor java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.this$0=OBJ(java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask at 169776139)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference private final java.util.concurrent.ScheduledExecutorService org.jboss.messaging.core.remoting.impl.RemotingConnectionImpl.pingExecutor=OBJ(org.jboss.messaging.core.remoting.impl.RemotingConnectionImpl at 1569284957)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference final java.util.concurrent.ScheduledThreadPoolExecutor java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.this$0=OBJ(java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask at 1725603492)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference private final java.util.concurrent.ScheduledExecutorService org.jboss.messaging.core.remoting.impl.RemotingConnectionImpl.pingExecutor=OBJ(org.jboss.messaging.core.remoting.impl.RemotingConnectionImpl at 451237309)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!--!--!--!--!--!-- FieldReference private java.lang.Object java.lang.ref.Reference.referent=OBJ(java.lang.ref.Finalizer at 1188706162)
  | <br>!--!--!--!--!--!--!--!--!--!--!--<b>MaxLevel</b>
  | <br>!--!--!--!--!-- FieldReference final java.util.concurrent.FutureTask java.util.concurrent.FutureTask$Sync.this$0=OBJ(java.util.concurrent.FutureTask$Sync at 1691493474)
  | <br>!--!--!--!--!--!-- object instanceOf class java.util.concurrent.FutureTask$Sync at 1691493474 was already described before on this report
  | <br>!--!--!--!--!-- FieldReference private java.util.concurrent.ScheduledFuture org.jboss.messaging.core.remoting.impl.RemotingConnectionImpl.future=OB
  | ...
  | 

View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4225460#4225460

Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4225460



More information about the jboss-dev-forums mailing list