code: void requestNextWakeup(long wakeup)
    {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.entry(tc, "requestNextWakeup", new Object[] { Long.valueOf(wakeup) });
  
  
      //synchronize on the target time
      synchronized(wakeupLock)
      {
        if(wakeup < nextWakeup)
        {
          setNextWakeup(wakeup);
        }
      }
  
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.exit(tc, "requestNextWakeup", new Object[]{Boolean.valueOf(running),Long.valueOf(wakeupDelta)});
    }
docs: Set the next target time at which the alarm thread should wake up and
  call the alarm method on the MPAlarmManager
  
  if the target time is set to -1 then this indicates that no wakeup is required
  and the thread should be suspended
  
  @param wakeup the next target time in ms