public synchronized void runTask(Runnable task){
  if (!isAlive) {
    throw new IllegalStateException();
  }
  if (task != null) {
    taskQueue.add(task);
    notify();
  }
}

public synchronized void runTask ( Runnable task ) { if ( ! isAlive ) { throw new IllegalStateException ( ) ; } if ( task != null ) { taskQueue . add ( task ) ; notify ( ) ; } }
requests a new task to run . this method returns immediately , and the task executes on the next available idle thread in this threadpool . < p > tasks start execution in the order they are received .
