クラス TaskExecutorAdapter

java.lang.ObjectSE
org.springframework.core.task.support.TaskExecutorAdapter
実装されたすべてのインターフェース:
ExecutorSEAsyncListenableTaskExecutorAsyncTaskExecutorTaskExecutor

public class TaskExecutorAdapter extends ObjectSE implements AsyncListenableTaskExecutor
JDK java.util.concurrent.Executor を取得し、Spring TaskExecutor を公開するアダプター。また、拡張 java.util.concurrent.ExecutorService を検出し、それに応じて AsyncTaskExecutor インターフェースを適合させます。
導入:
3.0
作成者:
Juergen Hoeller
関連事項:
  • コンストラクターの詳細

    • TaskExecutorAdapter

      public TaskExecutorAdapter(ExecutorSE concurrentExecutor)
      指定された JDK コンカレントエグゼキューターを使用して、新しい TaskExecutorAdapter を作成します。
      パラメーター:
      concurrentExecutor - 委譲する JDK コンカレントエグゼキューター
  • メソッドの詳細

    • setTaskDecorator

      public final void setTaskDecorator(TaskDecorator taskDecorator)
      実行しようとしている RunnableSE に適用するカスタム TaskDecorator を指定します。

      このようなデコレータは、必ずしもユーザー提供の Runnable/Callable に適用されるのではなく、実際の実行コールバック(ユーザー提供のタスクのラッパーである可能性があります)に適用されることに注意してください。

      主な使用例は、タスクの呼び出しの周囲に実行コンテキストを設定するか、タスク実行の監視 / 統計を提供することです。

      注意 TaskDecorator 実装での例外処理は、execute 呼び出しによる単純な Runnable 実行に制限されています。#submit 呼び出しの場合、公開された Runnable は、例外を伝搬しない FutureTask になります。例外を評価するには、キャストして Future#get を呼び出す必要がある場合があります。

      導入:
      4.3
    • execute

      public void execute(RunnableSE task)
      指定された JDK コンカレントエグゼキューターへのデリゲート。
      次で指定:
      インターフェース ExecutorSEexecuteSE 
      次で指定:
      インターフェース TaskExecutorexecute 
      パラメーター:
      task - 実行する Runnable (非 null)
      関連事項:
    • submit

      public FutureSE<?> submit(RunnableSE task)
      インターフェースからコピーされた説明: AsyncTaskExecutor
      実行可能な Runnable タスクを送信し、そのタスクを表す Future を受け取ります。Future は完了時に null の結果を返します。

      6.1 では、このメソッドには TaskExecutor.execute(Runnable) に委譲するデフォルトの実装が付属しています。

      次で指定:
      インターフェース AsyncTaskExecutorsubmit 
      パラメーター:
      task - 実行する Runnable (非 null)
      戻り値:
      タスクの保留中の補完を表す Future
    • submit

      public <T> FutureSE<T> submit(CallableSE<T> task)
      インターフェースからコピーされた説明: AsyncTaskExecutor
      Callable タスクを送信して実行し、そのタスクを表す Future を受け取ります。Future は、完了時に Callable の結果を返します。

      6.1 では、このメソッドには TaskExecutor.execute(Runnable) に委譲するデフォルトの実装が付属しています。

      次で指定:
      インターフェース AsyncTaskExecutorsubmit 
      パラメーター:
      task - 実行する Callable (非 null)
      戻り値:
      タスクの保留中の補完を表す Future
    • submitListenable

      public ListenableFuture<?> submitListenable(RunnableSE task)
      インターフェースからコピーされた説明: AsyncListenableTaskExecutor
      Runnable タスクを実行のために送信し、そのタスクを表す ListenableFuture を受け取ります。Future は完了時に null の結果を返します。
      次で指定:
      インターフェース AsyncListenableTaskExecutorsubmitListenable 
      パラメーター:
      task - 実行する Runnable (非 null)
      戻り値:
      保留中のタスクの補完を表す ListenableFuture 
    • submitListenable

      public <T> ListenableFuture<T> submitListenable(CallableSE<T> task)
      インターフェースからコピーされた説明: AsyncListenableTaskExecutor
      Callable タスクを実行のために送信し、そのタスクを表す ListenableFuture を受け取ります。Future は、完了時に Callable の結果を返します。
      次で指定:
      インターフェース AsyncListenableTaskExecutorsubmitListenable 
      パラメーター:
      task - 実行する Callable (非 null)
      戻り値:
      保留中のタスクの補完を表す ListenableFuture 
    • doExecute

      protected void doExecute(ExecutorSE concurrentExecutor, @Nullable TaskDecorator taskDecorator, RunnableSE runnable) throws RejectedExecutionExceptionSE
      実際に、指定されたエグゼキューターを使用して、指定された Runnable (ユーザー指定タスクまたはユーザー指定タスクのラッパー)を実行します。
      パラメーター:
      concurrentExecutor - 委譲先の基礎となる JDK コンカレントエグゼキューター
      taskDecorator - 適用される指定されたデコレータ(存在する場合)
      runnable - 実行するランナブル
      例外:
      RejectedExecutionExceptionSE - 指定された実行可能ファイルが受け入れられない場合
      導入:
      4.3