public void schedule(TimerTask task,Date when,long period){
  if (period <= 0 || when.getTime() < 0) {
    throw new IllegalArgumentException();
  }
  long delay=when.getTime() - System.currentTimeMillis();
  scheduleImpl(task,delay < 0 ? 0 : delay,period,false);
}

public void schedule ( TimerTask task , Date when , long period ) { if ( period <= 0 || when . getTime ( ) < 0 ) { throw new IllegalArgumentException ( ) ; } long delay = when . getTime ( ) - System . currentTimeMillis ( ) ; scheduleImpl ( task , delay < 0 ? 0 : delay , period , false ) ; }
schedule a task for repeated fixed - delay execution after a specific time has been reached .
