public interface WorkManager
Work
インスタンスを実行のために送信する機能を提供する WorkManager
をモデル化します。これにより、ユーザーは Java™ を作成する必要がなくなります。作業を直接行うスレッド。さらに、これにより、スレッドリソースを効率的にプールし、スレッドの使用をより詳細に制御できます。Work
処理のさまざまな段階は次のとおりです。Work
インスタンスが実行のために送信されています。Work
インスタンスは、適切なエラーコードに設定された WorkRejectedException
で受け入れられるか拒否されます。Work
インスタンスは受け入れられました。受け入れられた Work
インスタンスは、実行を開始するか、WorkRejectedException
を適切なエラーコードに設定して再度拒否することができます。開始タイムアウト期間が指定されていない限り、実行がいつ開始されるかについての保証はありません。開始タイムアウトが指定されている場合、Work
の実行は指定された期間(リアルタイムの保証ではない)内に開始する必要があり、失敗すると、エラーコード(WorkRejected.TIMED_OUT
)に設定された WorkRejectedException
がスローされます。Work
インスタンスは拒否されました。Work
インスタンスは、Work
の提出中、または Work
インスタンスが受け入れられた後(ただし、Work インスタンスが実行を開始する前)に拒否される可能性があります。拒否の原因は、内部要因またはタイムアウトの有効期限の開始です。どちらの場合も、適切なエラーコード(理由を示す)を含む WorkRejectedException
がスローされます。Work
インスタンスの実行が開始されました。これは、スレッドがその実行に割り当てられていることを意味します。ただし、これは、割り当てられたスレッドが CPU リソースで実行されるようにスケジュールされていることを保証するものではありません。実行が開始されると、割り当てられたスレッドが適切な実行コンテキスト(トランザクション、セキュリティなど)を設定し、Work.run() を呼び出します。実行コンテキストのセットアップまたは Work.run() 中にスローされた例外は、処理の補完につながることに注意してください。Work
の実行が完了しました。実行は例外ありまたは例外なしで完了する可能性があります。WorkManager
は、Work
処理(実行コンテキストのセットアップを含む)中にスローされた例外をキャッチし、それを WorkCompletedException
でラップします。修飾子と型 | フィールドと説明 |
---|---|
static long | IMMEDIATE タイムアウト期間を示す定数。 |
static long | INDEFINITE タイムアウト期間を示す定数。 |
static long | UNKNOWN 不明な開始遅延期間またはその他の不明な値を示す定数。 |
修飾子と型 | メソッドと説明 |
---|---|
void | doWork(Work work) Work インスタンスを受け入れて処理します。 |
void | doWork(Work work, long startTimeout, ExecutionContext execContext, WorkListener workListener) Work インスタンスを受け入れて処理します。 |
void | scheduleWork(Work work) Work インスタンスを受け入れて処理します。 |
void | scheduleWork(Work work, long startTimeout, ExecutionContext execContext, WorkListener workListener) Work インスタンスを受け入れて処理します。 |
long | startWork(Work work) Work インスタンスを受け入れて処理します。 |
long | startWork(Work work, long startTimeout, ExecutionContext execContext, WorkListener workListener) Work インスタンスを受け入れて処理します。 |
static final long IMMEDIATE
static final long INDEFINITE
static final long UNKNOWN
void doWork(Work work) throws WorkException
Work
インスタンスを受け入れて処理します。この呼び出しは、Work
インスタンスの実行が完了するまでブロックされます。受け入れられた Work
インスタンスがいつ実行を開始するかについての保証はありません。つまり、実行を開始するための時間的制約はありません。(つまり、startTimeout = INDEFINITE)work
- 実行する作業単位。長期または短期の可能性があります。WorkRejectedException
- Work
インスタンスが以降の処理から拒否されたことを示します。これは、内部要因が原因で発生する可能性があります。WorkCompletedException
- Work
インスタンスが例外を伴って実行を完了したことを示します。WorkException
void doWork(Work work, long startTimeout, ExecutionContext execContext, WorkListener workListener) throws WorkException
Work
インスタンスを受け入れて処理します。この呼び出しは、Work
インスタンスの実行が完了するまでブロックされます。work
- 実行する作業単位。長期または短期の可能性があります。startTimeout
- Work
インスタンスの実行を開始する必要がある期間(ミリ秒単位)。それ以外の場合、Work
インスタンスは、WorkRejectedException
が適切なエラーコード(WorkRejectedException.TIMED_OUT
)に設定された状態で拒否されます。これはリアルタイムの保証を提供しないことに注意してください。execContext
- 送信された Work
インスタンスを実行する必要がある実行コンテキストを含むオブジェクト。workListener
- さまざまな Work
処理イベント(作業の受け入れ、作業の拒否、作業の開始、作業の補完)が発生したときに通知されるオブジェクト。WorkRejectedException
- Work
インスタンスがそれ以上の処理から拒否されたことを示します。これは、内部要因または開始タイムアウトの有効期限が原因で発生する可能性があります。WorkCompletedException
- Work
インスタンスが例外を伴って実行を完了したことを示します。WorkException
long startWork(Work work) throws WorkException
Work
インスタンスを受け入れます。この呼び出しは、Work
インスタンスが実行を開始するまでブロックされますが、完了するまでブロックされません。受け入れられた Work
インスタンスがいつ実行を開始するかについての保証はありません。つまり、実行を開始する時間の制約はありません。(つまり、startTimeout = INDEFINITE)work
- 実行する作業単位。長期または短期の可能性があります。Work
が受け入れられてから実行が開始されるまでの経過時間(ミリ秒単位)。これはリアルタイムの保証を提供しないことに注意してください。実際の開始遅延時間が不明な場合は、-1 を返すことが有効です。WorkRejectedException
- Work
インスタンスが以降の処理から拒否されたことを示します。これは、内部要因が原因で発生する可能性があります。WorkException
long startWork(Work work, long startTimeout, ExecutionContext execContext, WorkListener workListener) throws WorkException
Work
インスタンスを受け入れます。この呼び出しは、Work
インスタンスが実行を開始するまでブロックされますが、完了するまでブロックされません。受け入れられた Work
インスタンスがいつ実行を開始するかについての保証はありません。つまり、実行を開始する時間の制約はありません。work
- 実行する作業単位。長期または短期の可能性があります。startTimeout
- Work
インスタンスの実行を開始する必要がある期間(ミリ秒単位)。それ以外の場合、Work
インスタンスは、WorkRejectedException
が適切なエラーコード(WorkRejectedException.TIMED_OUT
)に設定された状態で拒否されます。これはリアルタイムの保証を提供しないことに注意してください。execContext
- 送信された Work
インスタンスを実行する必要がある実行コンテキストを含むオブジェクト。workListener
- さまざまな Work
処理イベント(作業の受け入れ、作業の拒否、作業の開始、作業の補完)が発生したときに通知されるオブジェクト。Work
が受け入れられてから実行が開始されるまでの経過時間(ミリ秒単位)。これはリアルタイムの保証を提供しないことに注意してください。実際の開始遅延時間が不明な場合は、-1 を返すことが有効です。WorkRejectedException
- Work
インスタンスがそれ以上の処理から拒否されたことを示します。これは、内部要因または開始タイムアウトの有効期限が原因で発生する可能性があります。WorkException
void scheduleWork(Work work) throws WorkException
Work
インスタンスを受け入れます。この呼び出しはブロックされず、Work
インスタンスの処理が受け入れられるとすぐに戻ります。送信された Work
インスタンスがいつ実行を開始するかについての保証はありません。つまり、実行を開始する時間の制約はありません。(つまり、startTimeout = INDEFINITE)。work
- 実行する作業単位。長期または短期の可能性があります。WorkRejectedException
- Work
インスタンスが以降の処理から拒否されたことを示します。これは、内部要因が原因で発生する可能性があります。WorkException
void scheduleWork(Work work, long startTimeout, ExecutionContext execContext, WorkListener workListener) throws WorkException
Work
インスタンスを受け入れます。この呼び出しはブロックされず、Work
インスタンスの処理が受け入れられるとすぐに戻ります。work
- 実行する作業単位。長期または短期の可能性があります。startTimeout
- Work
インスタンスの実行を開始する必要がある期間(ミリ秒単位)。それ以外の場合、Work
インスタンスは、WorkRejectedException
が適切なエラーコード(WorkRejectedException.TIMED_OUT
)に設定された状態で拒否されます。これはリアルタイムの保証を提供しないことに注意してください。execContext
- 送信された Work
インスタンスを実行する必要がある実行コンテキストを含むオブジェクト。workListener
- さまざまな Work
処理イベント(作業の受け入れ、作業の拒否、作業の開始、作業の補完)が発生したときに通知されるオブジェクト。WorkRejectedException
- Work
インスタンスが以降の処理から拒否されたことを示します。これは、内部要因が原因で発生する可能性があります。WorkException
Copyright © 2018,2020 Eclipse Foundation.
Use is subject to license terms.