code: private ThreadGroup getRootThreadGroup() {
  	
  	    if ( rootThreadGroup != null )
  	        return rootThreadGroup;
  	    
  	    ThreadGroup tg = Thread.currentThread( ).getThreadGroup( );
  	    ThreadGroup ptg;
  	    while ( (ptg = tg.getParent( )) != null )
  	        tg = ptg;
  	    
  	    return tg;
  		
  	}
docs: Utility method to retrieve the root ThreadGroup.  Specifically, the
  root ThreadGroups is where ThreadGroup.getParent() == null.
  @return Root ThreadGroup