インタフェースStructuredTaskScope.Subtask<T>
- 型パラメータ:
T- 結果の型
- すべてのスーパー・インタフェース:
Supplier<T>
- 含まれているインタフェース:
StructuredTaskScopePREVIEW<T,R>
public static sealed interface StructuredTaskScope.Subtask<T> extends Supplier<T>
Subtaskは、JavaプラットフォームのプレビューAPIです。
プレビュー機能は、今後のリリースで削除するか、Javaプラットフォームの永続機能にアップグレードすることができます。
StructuredTaskScope.fork(Callable)PREVIEWまたはStructuredTaskScope.fork(Runnable)PREVIEWでフォークされたサブタスクを表します。
サブタスクをフォークするコードは、get()メソッドを結合PREVIEW後に使用して、正常に完了したサブタスクの結果を取得できます。 exception()メソッドを使用して、失敗したサブタスクによってスローされた例外を取得できます。
- 導入されたバージョン:
- 21
-
ネストされたクラスのサマリー
ネストされたクラス -
メソッドのサマリー
-
メソッドの詳細
-
state
-
get
T get()このサブタスクが正常に完了した場合、結果を返します。 サブタスクがfork(Callable)PREVIEWでフォークされた場合は、callメソッドの結果が返されます。 サブタスクがfork(Runnable)PREVIEWでフォークされた場合は、nullが返されます。スコープ所有者スレッドで実行するコードは、このメソッドを使用して、サブタスクが結合PREVIEWされた後に成功した結果を取得できます。
JoineronCompletePREVIEWメソッドで実行されているコードは、このメソッドを使用して結果を取得する前に、サブタスク状態がSUCCESSPREVIEWであることをテストする必要があります。このメソッドは、スコープ所有者が参加した後、どのスレッドでも呼び出すことができます。 スコープ所有者が結合される前にこのメソッドを使用して結果を取得できる唯一のケースは、
onComplete(Subtask)メソッドからコールした場合です。- 定義:
- インタフェース
Supplier<T>内のget - 戻り値:
- NULLの可能性がある結果
- スロー:
IllegalStateException- サブタスクが完了していないか、正常に完了しなかった場合、または所有者スレッドが結合される前にonComplete(Subtask)メソッドのコンテキストの外で呼び出された場合、このメソッド- 関連項目:
-
exception
Throwable exception()失敗した場合、このサブタスクによってスローされた例外またはエラーを返します。 サブタスクがfork(Callable)PREVIEWでフォークされた場合は、callメソッドによってスローされた例外またはエラーが返されます。 サブタスクがfork(Runnable)PREVIEWでフォークされた場合は、runメソッドによってスローされた例外またはエラーが返されます。スコープ所有者スレッドで実行されているコードは、このメソッドを使用して、失敗したサブタスクが結合PREVIEWされた後、そのサブタスクによってスローされた例外を取得できます。
JoineronCompletePREVIEWメソッドで実行されているコードは、このメソッドを使用して例外を取得する前に、サブタスク状態がFAILEDPREVIEWであることをテストする必要があります。このメソッドは、スコープ所有者が参加した後、どのスレッドでも呼び出すことができます。 スコープ所有者が結合される前にこのメソッドを使用して例外を取得できる唯一のケースは、
onComplete(Subtask)メソッドからコールした場合です。- 戻り値:
- 失敗した場合、このサブタスクによってスローされる例外またはエラー
- スロー:
IllegalStateException- サブタスクが結果で完了または完了していない場合、または所有者スレッドが結合される前にonComplete(Subtask)メソッドのコンテキストの外で呼び出された場合、このメソッド- 関連項目:
-
Subtaskを使用できます。