final void detachFromThreadPool(){
  if (shutdown.getAndSet(true))   throw new AssertionError("Already shutdown");
  if (!isEmpty())   throw new AssertionError("Group not empty");
  shutdownHandlerTasks();
}

final void detachFromThreadPool ( ) { if ( shutdown . getAndSet ( true ) ) throw new AssertionError ( "Already shutdown" ) ; if ( ! isEmpty ( ) ) throw new AssertionError ( "Group not empty" ) ; shutdownHandlerTasks ( ) ; }
for use by asynchronousfilechannel to release resources without shutting down the thread pool .
