예제 #1
0
  @Override
  public <T> List<Future<T>> invokeAll(Collection<? extends Callable<T>> tasks)
      throws InterruptedException {

    List<TrackedCallable<T>> trackedTaskList = executorCore.registerCallableList(tasks);

    return executorCore.trackFutureList(executor.invokeAll(trackedTaskList), trackedTaskList);
  }
예제 #2
0
  @Override
  public <T> T invokeAny(Collection<? extends Callable<T>> tasks, long timeout, TimeUnit unit)
      throws InterruptedException, ExecutionException, TimeoutException {

    List<TrackedCallable<T>> trackedTaskList = executorCore.registerCallableList(tasks);

    return executor.invokeAny(trackedTaskList, timeout, unit);
  }
예제 #3
0
 @Override
 public List<Runnable> shutdownNow() {
   return executorCore.shutdownNow();
 }
예제 #4
0
 // shutdown/termination functions delegate to the UnstoppableExecutorCore
 @Override
 public void shutdown() {
   executorCore.shutdown();
 }
예제 #5
0
 @Override
 public void execute(Runnable command) {
   executor.execute(executorCore.registerTask(command));
 }
예제 #6
0
  @Override
  public Future<?> submit(Runnable task) {
    TrackedRunnable trackedTask = executorCore.registerTask(task);

    return executorCore.trackFuture(executor.submit(trackedTask), trackedTask);
  }
예제 #7
0
  @Override
  public <T> Future<T> submit(Runnable task, T result) {
    TrackedRunnable trackedTask = executorCore.registerTask(task);

    return executorCore.trackFuture(executor.submit(trackedTask, result), trackedTask);
  }
예제 #8
0
 @Override
 public <T> Future<T> submit(Callable<T> task) {
   return executor.submit(executorCore.registerTask(task));
 }
예제 #9
0
 @Override
 public boolean awaitTermination(long timeout, TimeUnit unit) throws InterruptedException {
   return executorCore.awaitTermination(timeout, unit);
 }
예제 #10
0
 @Override
 public boolean isTerminated() {
   return executorCore.isTerminated();
 }
예제 #11
0
 @Override
 public boolean isShutdown() {
   return executorCore.isShutdown();
 }