code: public void threadStarted(ThreadPool tp, int activeThreads, int maxThreads)
    {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) 
        SibTr.entry(tc, "threadStarted", new Object[]{tp, new Integer(activeThreads), new Integer(maxThreads)});
      
      if (TraceComponent.isAnyTracingEnabled() && (tc.isDebugEnabled() || tc.isDumpEnabled() || tc.isEntryEnabled() || tc.isEventEnabled()))
        SibTr.push(_messageProcessor.getMessagingEngine());  
      
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) 
        SibTr.exit(tc, "threadStarted");
    }
docs: /* (non-Javadoc)
  @see com.ibm.ws.util.ThreadPoolListener#threadStarted(com.ibm.ws.util.ThreadPool, int, int)
  
  Only need to push the messaging engine at thread started time.  This should be a one off cost.