クラス AsyncTaskManagerImpl
java.lang.Object
org.iplass.mtp.impl.async.AsyncTaskManagerImpl
- すべての実装されたインタフェース:
AsyncTaskManager,Manager
-
コンストラクタの概要
コンストラクタ -
メソッドの概要
修飾子とタイプメソッド説明<V> AsyncTaskFuture<V> デフォルトの実行オプション設定にて指定のtaskを非同期実行する。<V> AsyncTaskFuture<V> execute(AsyncTaskOption option, Callable<V> task) 指定のtask, optionで表現される非同期タスクを実行する。<V> Future<V> executeOnThread(Callable<V> task) ローカルスレッドでタスクを非同期実行する。voidforceDelete(long taskId, String queueName) AsyncTaskInfoを強制削除する。<V> AsyncTaskFuture<V> 指定のtaskId,queueNameで特定される非同期タスクの実行結果を問い合わせる。loadAsyncTaskInfo(long taskId, String queueName) AsyncTaskInfoの詳細を取得する。永続Storeに保存されている(ローカルスレッド実行でない)非同期タスクの情報を取得する。
-
コンストラクタの詳細
-
AsyncTaskManagerImpl
public AsyncTaskManagerImpl()
-
-
メソッドの詳細
-
executeOnThread
インタフェースからコピーされた説明:AsyncTaskManagerローカルスレッドでタスクを非同期実行する。
ローカルスレッド実行では以下の制約がある。
- トランザクション管理対象外:呼び出し元がロールバックしても、非同期処理が継続
AsyncTaskManager.getResult(long, String)による問い合わせ不可- リトライ、タイムアウトなどの制御なし
- 定義:
executeOnThreadインタフェース内AsyncTaskManager- パラメータ:
task- 非同期実行する処理- 戻り値:
- 実行結果を表すFuture
-
execute
インタフェースからコピーされた説明:AsyncTaskManagerデフォルトの実行オプション設定にて指定のtaskを非同期実行する。 デフォルトの設定はAsyncTaskOptionを参照のこと。- 定義:
executeインタフェース内AsyncTaskManager- パラメータ:
task- 非同期実行する処理- 戻り値:
- 実行結果を表すAsyncTaskFuture
-
execute
インタフェースからコピーされた説明:AsyncTaskManager指定のtask, optionで表現される非同期タスクを実行する。
ローカルスレッド実行指定(AsyncTaskManager.executeOnThread(Callable)or optionのキュー名に指定)されない限り、 taskおよび、型VはSerializableを実装する必要がある。無効な参照です
AsyncTaskManager#LOCAL_THREAD_QUEUE_NAME
また、ロカールスレッド実行ではない場合、 このメソッドの結果として返される、AsyncTaskFutureのインスタンスの扱いは注意が必要。 ロカールスレッド実行に比較して、キューを介したタスクの処理には比較的処理時間がかかるため、 また、の場合、 呼び出すスレッドのトランザクションが完了するまで非同期タスクの実行が開始されないため、無効な参照です
StartMode.AFTER_COMMITAsyncTaskFuture.get()の呼び出しはタイムアウトする可能性が高い。 別のタイミングで、AsyncTaskManager.getResult(long, String)を呼び出し、結果を取得すること。- 定義:
executeインタフェース内AsyncTaskManager- パラメータ:
option- 非同期タスク実行オプションtask- 非同期実行する処理- 戻り値:
- 実行結果を表すAsyncTaskFuture
-
getResult
インタフェースからコピーされた説明:AsyncTaskManager指定のtaskId,queueNameで特定される非同期タスクの実行結果を問い合わせる。- 定義:
getResultインタフェース内AsyncTaskManager- パラメータ:
taskId-queueName- キュー名、nullの場合はデフォルトキュー指定されたとみなす- 戻り値:
- 実行結果を表すAsyncTaskFuture
-
loadAsyncTaskInfo
インタフェースからコピーされた説明:AsyncTaskManagerAsyncTaskInfoの詳細を取得する。 task、およびresultもロードする。- 定義:
loadAsyncTaskInfoインタフェース内AsyncTaskManager- パラメータ:
taskId-queueName- キュー名、nullの場合はデフォルトキュー指定されたとみなす- 戻り値:
-
searchAsyncTaskInfo
インタフェースからコピーされた説明:AsyncTaskManager永続Storeに保存されている(ローカルスレッド実行でない)非同期タスクの情報を取得する。 このメソッドを利用して返却されるAsyncTaskInfoには、taskおよび、resultは含まれない(メモリ負荷を考慮し)。 これらを取得する場合は、別途AsyncTaskManager.loadAsyncTaskInfo(long, String)を利用する。- 定義:
searchAsyncTaskInfoインタフェース内AsyncTaskManager- パラメータ:
cond-- 戻り値:
-
forceDelete
インタフェースからコピーされた説明:AsyncTaskManagerAsyncTaskInfoを強制削除する。- 定義:
forceDeleteインタフェース内AsyncTaskManager- パラメータ:
taskId-queueName- キュー名、nullの場合はデフォルトキュー指定されたとみなす
-