public static void cleanUpThreadGroups() {
    synchronized (loggingThreadGroups) {
      for (LoggingThreadGroup loggingThreadGroup : loggingThreadGroups) {
        if (!loggingThreadGroup.getName().equals(InternalDistributedSystem.SHUTDOWN_HOOK_NAME)
            && !loggingThreadGroup.getName().equals("GemFireConnectionFactory Shutdown Hook")) {
          loggingThreadGroup.cleanup();
        }
      }
    }
  }
Returns a <code>ThreadGroup</code> whose {@link ThreadGroup#uncaughtException} method logs to
both {#link System#err} and the given <code>InternalLogWriter</code>.

@param name The name of the <code>ThreadGroup</code>
@param logger A <code>InternalLogWriter</code> to log uncaught exceptions to. It is okay for
       this argument to be <code>null</code>.

@since GemFire 3.0
geode-core/src/main/java/org/apache/geode/internal/logging/LoggingThreadGroup.java