@Override public void schedule(){
  startRunning();
  for (  Thread t : mutatorThreads) {
    t.start();
  }
  while (mutatorThreads.size() > activeMutators) {
synchronized (count) {
      try {
        count.wait();
      }
 catch (      InterruptedException e) {
      }
      Trace.trace(Item.SCHEDULER,"Active mutators = " + activeMutators + ", mutatorThreads = "+ mutatorThreads.size());
    }
  }
  while (activeMutators > 0) {
synchronized (count) {
      try {
        count.wait();
      }
 catch (      InterruptedException e) {
      }
      Trace.trace(Item.SCHEDULER,"Active mutators = " + activeMutators);
    }
  }
}

@ Override public void schedule ( ) { startRunning ( ) ; for ( Thread t : mutatorThreads ) { t . start ( ) ; } while ( mutatorThreads . size ( ) > activeMutators ) { synchronized ( count ) { try { count . wait ( ) ; } catch ( InterruptedException e ) { } Trace . trace ( Item . SCHEDULER , "Active mutators = " + activeMutators + ", mutatorThreads = " + mutatorThreads . size ( ) ) ; } } while ( activeMutators > 0 ) { synchronized ( count ) { try { count . wait ( ) ; } catch ( InterruptedException e ) { } Trace . trace ( Item . SCHEDULER , "Active mutators = " + activeMutators ) ; } } }
wait for the mutator threads to exit .
