public void execute(AbortableTask task) {
    AbortingRunnable ar = new AbortingRunnable(task);
    tasks.add(ar);

    try {
      exec.execute(ar);

    } catch (RejectedExecutionException e) {
      tasks.remove(ar);
      throw e;
    }
  }
Executes the task using the embedded executor.

@param task the task to execute
geode-core/src/main/java/org/apache/geode/internal/util/AbortableTaskService.java