docs: public <T> T executeAbortable(ExecutorService exec, Callable<T> callable)
              throws IOException, InterruptedException, ExecutionException {
          Future<T> task = exec.submit(callable);
          waitAbortable(task);
          return task.get();
      }