code: public synchronized void setIdleState(IdleState idleState) {
      this.idleState = idleState;
      switch (idleState) {
        case UNPAUSED:
          advanceBy(0);
          break;
        case CONSTANT_IDLE:
          advanceToLastPostedRunnable();
          break;
        default:
      }
    }
docs: Sets the current idling state of this <tt>Scheduler</tt>. If transitioning to the
  {@link IdleState#UNPAUSED} state any tasks scheduled to be run at or before the current time
  will be run, and if transitioning to the {@link IdleState#CONSTANT_IDLE} state all scheduled
  tasks will be run and the clock advanced to the time of the last runnable.
  @param idleState The new idle state of this <tt>Scheduler</tt>.
  @see #setIdleState(IdleState)
  @see #isPaused()