code: public void stop() {
          lock.writeLock().lock();
          try {
              debugRelativeTime("Stop!");
              this.stopped = true;
              if (this.future != null && !this.future.isDone()) {
                  debugRelativeTime("Cancelling");
                  this.future.cancel(true);
              }
              this.future = null;
          } finally {
              lock.writeLock().unlock();
          }
  
      }
docs: Stop the timeout ... mark it as stopped and cancel the scheduled future task if required