Java tutorial
//package com.java2s; /* * * The contents of this file are subject to the Terracotta Public License Version * 2.0 (the "License"); You may not use this file except in compliance with the * License. You may obtain a copy of the License at * * http://terracotta.org/legal/terracotta-public-license. * * Software distributed under the License is distributed on an "AS IS" basis, * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for * the specific language governing rights and limitations under the License. * * The Covered Software is Terracotta Core. * * The Initial Developer of the Covered Software is * Terracotta, Inc., a Software AG company * */ public class Main { protected static volatile ThreadGroup rootThreadGroup; public static ThreadGroup getRootThreadGroup() { if (rootThreadGroup == null) { ThreadGroup tg = Thread.currentThread().getThreadGroup(); ThreadGroup parent = tg.getParent(); while (parent != null) { tg = parent; parent = tg.getParent(); } rootThreadGroup = tg; } return rootThreadGroup; } }