Интерфейс StructuredTaskScope.Subtask<T>
- Параметры типа:
T- тип результата
- Все суперинтерфейсы:
Supplier<T>
- Внешний интерфейс:
StructuredTaskScopePREVIEW<T,R>
public static sealed interface StructuredTaskScope.Subtask<T> extends Supplier<T>
Subtask — предварительная версия API платформы Java. StructuredTaskScope.fork(Callable)ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ или StructuredTaskScope.fork(Runnable)ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ. Код, запускающий подзадачи, может использовать метод get() после присоединенияПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, чтобы получить результат успешно завершившейся подзадачи. Чтобы получить исключение, выброшенное завершившейся с ошибкой подзадачей, можно использовать метод exception().
- Начиная с:
- 21
Краткое описание вложенных классов
| Модификатор и тип | Интерфейс | Описание |
|---|---|---|
static enum |
StructuredTaskScope.Subtask.StatePREVIEW |
Предварительная версия. Представляет состояние подзадачи. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
Throwable |
exception() |
Возвращает исключение или ошибку, выброшенные этой подзадачей, если она завершилась с ошибкой. |
T |
get() |
Возвращает результат этой подзадачи, если она завершилась успешно. |
StructuredTaskScope.Subtask.StatePREVIEW |
state() |
Возвращает состояние подзадачи. |
Подробное описание методов
state
StructuredTaskScope.Subtask.StatePREVIEW state()
- Возвращает:
- состояние подзадачи
get
T get()
fork(Callable)ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, возвращается результат метода call. Если подзадача была запущена с помощью fork(Runnable)ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, возвращается null. Код, выполняющийся в потоке владельца области, может использовать этот метод для получения результата успешно завершившейся подзадачи только после присоединенияПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ.
Код, выполняющийся в методе Joiner onCompleteПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, должен проверить, что состояние подзадачи равно SUCCESSПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, прежде чем использовать этот метод для получения результата.
- Указан в:
-
getв интерфейсеSupplier<T> - Возвращает:
- возможно, null-результат
- Выбрасывает:
-
IllegalStateException— если подзадача ещё не завершилась, завершилась неуспешно или текущий поток является потоком владельца области и вызывает этот метод до присоединенияПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ - См. также:
exception
Throwable exception()
fork(Callable)ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, возвращается исключение или ошибка, выброшенные методом call. Если подзадача была запущена с помощью fork(Runnable)ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, возвращается исключение или ошибка, выброшенные методом run. Код, выполняющийся в потоке владельца области, может использовать этот метод для получения исключения, выброшенного завершившейся с ошибкой подзадачей, только после присоединенияПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ.
Код, выполняющийся в методе Joiner onCompleteПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, должен проверить, что состояние подзадачи равно FAILEDПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, прежде чем использовать этот метод для получения исключения.
- Возвращает:
- исключение или ошибку, выброшенные этой подзадачей, если она завершилась с ошибкой
- Выбрасывает:
-
IllegalStateException— если подзадача ещё не завершилась, завершилась с результатом или текущий поток является потоком владельца области и вызывает этот метод до присоединенияПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ - См. также:
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/util/concurrent/StructuredTaskScope.Subtask.html
Subtaskтолько при включённых функциях предварительного просмотра.