Spec-Zone.ru › OpenJDK 27

Интерфейс StructuredTaskScope.Subtask<T>

Параметры типа:
T — тип результата
Все суперинтерфейсы:
Supplier<T>
Включающий интерфейс:
StructuredTaskScopePREVIEW<T, R, R_X extends Throwable>
public static sealed interface StructuredTaskScope.Subtask<T> extends Supplier<T>
Subtask — это предварительная версия API платформы Java.
Программы могут использовать Subtask только при включённых предварительных функциях.
Предварительные функции могут быть удалены в будущей версии или стать постоянными функциями платформы Java.
Представляет подзадачу, запущенную в StructuredTaskScopeПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ с помощью fork(Callable)ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ или fork(Runnable)ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ.

Владелец области видимости может использовать метод get() после присоединенияПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, чтобы получить результат успешно завершившейся подзадачи. Метод exception() позволяет получить исключение, выброшенное подзадачей, завершившейся с ошибкой.

С версии:
21

Краткое описание вложенных классов

Модификатор и тип Интерфейс Описание
static enum  StructuredTaskScope.Subtask.StatePREVIEW
Предварительная версия.
Представляет состояние SubtaskПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ.

Краткое описание методов

Модификатор и тип Метод Описание
Throwable exception()
Возвращает исключение или ошибку, выброшенные этой подзадачей, если она завершилась с ошибкой.
T get()
Возвращает результат этой подзадачи, если она завершилась успешно.
StructuredTaskScope.Subtask.StatePREVIEW state()
Возвращает состояние подзадачи.

Подробное описание методов

state

StructuredTaskScope.Subtask.StatePREVIEW state()
Возвращает состояние подзадачи.
Возвращает:
состояние подзадачи

get

T get()
Возвращает результат этой подзадачи, если она завершилась успешно. Если область видимости отменена, подзадача успешно завершилась до отмены области видимости. Если подзадача была запущена с помощью fork(Callable)ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, возвращается результат метода call(). Если подзадача была запущена с помощью fork(Runnable)ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, возвращается null.

Код, выполняющийся в потоке владельца области видимости, может использовать этот метод для получения результата успешно завершившейся подзадачи после присоединенияПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ.

Код, выполняющийся в методе Joiner onComplete(Subtask)ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, должен проверить, что состояние равно SUCCESSПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, прежде чем использовать этот метод для получения результата.

Этот метод можно вызвать из любого потока после присоединения владельца области видимости. Единственный случай, когда этот метод можно использовать для получения результата до присоединения владельца области видимости, — вызов из метода onComplete(Subtask).

Определено в:
get в интерфейсе Supplier<T>
Возвращает:
возможно, null-результат
Выбрасывает:
IllegalStateException — если подзадача не завершилась или завершилась неуспешно либо если этот метод вызван вне контекста метода onComplete(Subtask) до присоединения потока владельца
См. также:
  • StructuredTaskScope.Subtask.State.SUCCESSПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ

exception

Throwable exception()
Возвращает исключение или ошибку, выброшенные этой подзадачей, если она завершилась с ошибкой. Если область видимости отменена, подзадача завершилась с ошибкой до отмены области видимости. Если подзадача была запущена с помощью fork(Callable)ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, возвращается исключение или ошибка, выброшенные методом call(). Если подзадача была запущена с помощью fork(Runnable)ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, возвращается исключение или ошибка, выброшенные методом run().

Код, выполняющийся в потоке владельца области видимости, может использовать этот метод для получения исключения, выброшенного подзадачей, завершившейся с ошибкой, после присоединенияПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ.

Код, выполняющийся в методе Joiner onComplete(Subtask)ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, должен проверить, что состояние равно FAILEDПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, прежде чем использовать этот метод для получения исключения.

Этот метод можно вызвать из любого потока после присоединения владельца области видимости. Единственный случай, когда этот метод можно использовать для получения исключения до присоединения владельца области видимости, — вызов из метода onComplete(Subtask).

Возвращает:
исключение или ошибку, выброшенные этой подзадачей, если она завершилась с ошибкой
Выбрасывает:
IllegalStateException — если подзадача не завершилась или завершилась с результатом либо если этот метод вызван вне контекста метода onComplete(Subtask) до присоединения потока владельца
См. также:
  • StructuredTaskScope.Subtask.State.FAILEDПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API