code: @Override
      public void stop(Throwable cause) throws Exception {
          stopping = true;
          if (task != null) {
              task.cancel(true);
          }
          super.stop(cause);
      }
docs: If the computation is going synchronously, try to cancel that.