public class AsyncTaskManagerImpl extends java.lang.Object implements AsyncTaskManager
| コンストラクタと説明 |
|---|
AsyncTaskManagerImpl() |
| 修飾子とタイプ | メソッドと説明 |
|---|---|
<V> AsyncTaskFuture<V> |
execute(AsyncTaskOption option,
java.util.concurrent.Callable<V> task)
指定のtask, optionで表現される非同期タスクを実行する。
|
<V> AsyncTaskFuture<V> |
execute(java.util.concurrent.Callable<V> task)
デフォルトの実行オプション設定にて指定のtaskを非同期実行する。
|
<V> java.util.concurrent.Future<V> |
executeOnThread(java.util.concurrent.Callable<V> task)
ローカルスレッドでタスクを非同期実行する。
|
void |
forceDelete(long taskId,
java.lang.String queueName)
AsyncTaskInfoを強制削除する。
|
<V> AsyncTaskFuture<V> |
getResult(long taskId,
java.lang.String queueName)
指定のtaskId,queueNameで特定される非同期タスクの実行結果を問い合わせる。
|
AsyncTaskInfo |
loadAsyncTaskInfo(long taskId,
java.lang.String queueName)
AsyncTaskInfoの詳細を取得する。
|
java.util.List<AsyncTaskInfo> |
searchAsyncTaskInfo(AsyncTaskInfoSearchCondtion cond)
永続Storeに保存されている(ローカルスレッド実行でない)非同期タスクの情報を取得する。
|
public <V> java.util.concurrent.Future<V> executeOnThread(java.util.concurrent.Callable<V> task)
AsyncTaskManagerAsyncTaskManager.getResult(long, String)による問い合わせ不可executeOnThread インタフェース内 AsyncTaskManagertask - 非同期実行する処理public <V> AsyncTaskFuture<V> execute(java.util.concurrent.Callable<V> task)
AsyncTaskManagerAsyncTaskOptionを参照のこと。execute インタフェース内 AsyncTaskManagertask - 非同期実行する処理public <V> AsyncTaskFuture<V> execute(AsyncTaskOption option, java.util.concurrent.Callable<V> task)
AsyncTaskManagerAsyncTaskManager.executeOnThread(Callable)
or optionのキュー名にAsyncTaskManager#LOCAL_THREAD_QUEUE_NAME指定)されない限り、
taskおよび、型VはSerializableを実装する必要がある。AsyncTaskFutureのインスタンスの扱いは注意が必要。
ロカールスレッド実行に比較して、キューを介したタスクの処理には比較的処理時間がかかるため、
また、StartMode.AFTER_COMMITの場合、
呼び出すスレッドのトランザクションが完了するまで非同期タスクの実行が開始されないため、
AsyncTaskFuture.get()の呼び出しはタイムアウトする可能性が高い。
別のタイミングで、AsyncTaskManager.getResult(long, String)を呼び出し、結果を取得すること。execute インタフェース内 AsyncTaskManageroption - 非同期タスク実行オプションtask - 非同期実行する処理public <V> AsyncTaskFuture<V> getResult(long taskId, java.lang.String queueName)
AsyncTaskManagergetResult インタフェース内 AsyncTaskManagerqueueName - キュー名、nullの場合はデフォルトキュー指定されたとみなすpublic AsyncTaskInfo loadAsyncTaskInfo(long taskId, java.lang.String queueName)
AsyncTaskManagerloadAsyncTaskInfo インタフェース内 AsyncTaskManagerqueueName - キュー名、nullの場合はデフォルトキュー指定されたとみなすpublic java.util.List<AsyncTaskInfo> searchAsyncTaskInfo(AsyncTaskInfoSearchCondtion cond)
AsyncTaskManagerAsyncTaskManager.loadAsyncTaskInfo(long, String)を利用する。searchAsyncTaskInfo インタフェース内 AsyncTaskManagerpublic void forceDelete(long taskId,
java.lang.String queueName)
AsyncTaskManagerforceDelete インタフェース内 AsyncTaskManagerqueueName - キュー名、nullの場合はデフォルトキュー指定されたとみなす