code: public synchronized void run() {
      if (!interrupted) {
        try {
          execute();
        } catch (IOException ex) {
          reportException(ex);
        }
  
        complete = true;
        interrupted = true;
      }
    }
docs: {@inheritDoc}