Класс CompletableFuture<T>
- Type Parameters:
-
T- Тип результата, возвращаемый методамиjoinиgetданного объекта
- Все реализованные интерфейсы:
-
CompletionStage<T>,Future<T>
public class CompletableFuture<T> extends Object implements Future<T>, CompletionStage<T>
Future, который можно явно завершить (установив его значение и статус), и который можно использовать как CompletionStage, поддерживающий зависимые функции и действия, запускаемые при его завершении. Когда две или более потоков пытаются complete, completeExceptionally или cancel объект CompletableFuture, только один из них выполняется успешно.
Помимо этих и связанных методов для прямого управления состоянием и результатами, CompletableFuture реализует интерфейс CompletionStage со следующими правилами:
- Действия, предоставленные для зависимых завершений методов не-асинхронных, могут выполняться потоком, который завершает текущий объект CompletableFuture, или любым другим вызывающим методом метода завершения.
- Все асинхронные методы без явного аргумента Executor выполняются с использованием
ForkJoinPool.commonPool()(если он не поддерживает уровень параллелизма не менее двух, в этом случае для выполнения каждой задачи создается новый поток). Это можно переопределить для нестатических методов в подклассах, определив методdefaultExecutor(). Для упрощения мониторинга, отладки и отслеживания все сгенерированные асинхронные задачи являются экземплярами интерфейса-маркераCompletableFuture.AsynchronousCompletionTask. Операции с задержками во времени могут использовать адаптерные методы, определенные в этом классе, например:supplyAsync(supplier, delayedExecutor(timeout, timeUnit)). Для поддержки методов с задержками и таймаутами этот класс поддерживает не более одного демона-потока для запуска и отмены действий, а не для их выполнения. - Все методы CompletionStage реализуются независимо от других публичных методов, поэтому поведение одного метода не зависит от переопределений других в подклассах.
- Все методы CompletionStage возвращают объекты CompletableFutures. Чтобы ограничить использование только теми методами, которые определены в интерфейсе CompletionStage, используйте метод
minimalCompletionStage(). Или чтобы гарантировать, что клиенты сами не изменяют объект future, используйте методcopy().
CompletableFuture также реализует Future со следующими правилами:
- Поскольку (в отличие от
FutureTask) этот класс не имеет прямого контроля над вычислением, которое приводит к его завершению, отмена обрабатывается как просто еще одна форма исключительного завершения. Методcancelимеет тот же эффект, что иcompleteExceptionally(new CancellationException()). МетодisCompletedExceptionally()можно использовать для определения, завершился ли CompletableFuture каким-либо исключительным образом. - В случае исключительного завершения с CompletionException методы
get()иget(long, TimeUnit)выбрасываютExecutionExceptionс той же причиной, что и в соответствующем CompletionException. Для упрощения использования в большинстве контекстов этот класс также определяет методыjoin()иgetNow(T), которые вместо этого непосредственно выбрасывают CompletionException в этих случаях.
Аргументы, используемые для передачи результата завершения (то есть для параметров типа T) для методов, принимающих их, могут быть null, но передача null в качестве значения для любого другого параметра приведет к выбрасыванию NullPointerException.
Подклассы этого класса обычно должны переопределять метод "виртуального конструктора" newIncompleteFuture(), который устанавливает конкретный тип, возвращаемый методами CompletionStage. Например, вот класс, который подставляет другой по умолчанию Executor и отключает методы obtrude:
class MyCompletableFuture<T> extends CompletableFuture<T> {
static final Executor myExecutor = ...;
public MyCompletableFuture() { }
public <U> CompletableFuture<U> newIncompleteFuture() {
return new MyCompletableFuture<U>(); }
public Executor defaultExecutor() {
return myExecutor; }
public void obtrudeValue(T value) {
throw new UnsupportedOperationException(); }
public void obtrudeException(Throwable ex) {
throw new UnsupportedOperationException(); }
}
- Since:
- 1.8
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
static interface |
CompletableFuture.AsynchronousCompletionTask |
Маркерный интерфейс, идентифицирующий асинхронные задачи, созданные методами async. |
Вложенные классы/интерфейсы, объявленные в интерфейсе java.util.concurrent.Future
Future.State
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
CompletableFuture() |
Создает новый незавершенный CompletableFuture. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
CompletableFuture |
acceptEither |
Возвращает новый CompletionStage, который, когда этот или другой заданный этап завершаются нормально, выполняется с соответствующим результатом в качестве аргумента для предоставленного действия. |
CompletableFuture |
acceptEitherAsync |
Возвращает новый CompletionStage, который, когда этот или другой заданный этап завершаются нормально, выполняется с использованием стандартного асинхронного механизма выполнения этого этапа, с соответствующим результатом в качестве аргумента для предоставленного действия. |
CompletableFuture |
acceptEitherAsync |
Возвращает новый CompletionStage, который, когда этот или другой заданный этап завершаются нормально, выполняется с использованием предоставленного исполнителя, с соответствующим результатом в качестве аргумента для предоставленного действия. |
static CompletableFuture |
allOf |
Возвращает новый CompletableFuture, который завершается, когда все заданные CompletableFutures завершаются. |
static CompletableFuture |
anyOf |
Возвращает новый CompletableFuture, который завершается, когда любой из заданных CompletableFutures завершается, с тем же результатом. |
<U> CompletableFuture |
applyToEither |
Возвращает новый CompletionStage, который, когда этот или другой заданный этап завершаются нормально, выполняется с соответствующим результатом в качестве аргумента для предоставленной функции. |
<U> CompletableFuture |
applyToEitherAsync |
Возвращает новый CompletionStage, который, когда этот или другой заданный этап завершаются нормально, выполняется с использованием стандартного асинхронного механизма выполнения этого этапа, с соответствующим результатом в качестве аргумента для предоставленной функции. |
<U> CompletableFuture |
applyToEitherAsync |
Возвращает новый CompletionStage, который, когда этот или другой заданный этап завершаются нормально, выполняется с использованием предоставленного исполнителя, с соответствующим результатом в качестве аргумента для предоставленной функции. |
boolean |
cancel |
Если еще не завершён, завершает этот CompletableFuture с CancellationException. |
boolean |
complete |
Если еще не завершён, устанавливает значение, возвращаемое методом get() и связанными методами, до заданного значения. |
CompletableFuture |
completeAsync |
Завершает этот CompletableFuture результатом заданной функции Supplier, вызванной из асинхронной задачи с использованием стандартного исполнителя. |
CompletableFuture |
completeAsync |
Завершает этот CompletableFuture результатом заданной функции Supplier, вызванной из асинхронной задачи с использованием заданного исполнителя. |
static <U> CompletableFuture |
completedFuture |
Возвращает новый CompletableFuture, который уже завершен заданным значением. |
static <U> CompletionStage |
completedStage |
Возвращает новый CompletionStage, который уже завершен заданным значением и поддерживает только те методы из интерфейса CompletionStage. |
boolean |
completeExceptionally |
Если еще не завершён, вызывает исключение, которое будет выброшено при последующих вызовах get() и связанных методов. |
CompletableFuture |
completeOnTimeout |
Завершает этот CompletableFuture заданным значением, если он не завершён до заданного таймаута. |
CompletableFuture |
copy() |
Возвращает новый CompletableFuture, который завершается нормально с тем же значением, что и этот CompletableFuture, при его нормальном завершении. |
Executor |
defaultExecutor() |
Возвращает стандартный Executor, используемый для асинхронных методов, не указывающих Executor. |
static Executor |
delayedExecutor |
Возвращает новый Executor, который отправляет задачу в стандартный Executor после заданной задержки (или без задержки, если значение не положительно). |
static Executor |
delayedExecutor |
Возвращает новый Executor, который отправляет задачу в заданный базовый Executor после заданной задержки (или без задержки, если значение не положительно). |
CompletableFuture |
exceptionally |
Возвращает новый CompletionStage, который, когда этот этап завершается с ошибкой, выполняется с исключением этого этапа в качестве аргумента для предоставленной функции. |
static <U> CompletableFuture |
failedFuture |
Возвращает новый CompletableFuture, который уже завершен с исключением. |
static <U> CompletionStage |
failedStage |
Возвращает новый CompletionStage, который уже завершен с исключением и поддерживает только те методы из интерфейса CompletionStage. |
T |
get() |
Ожидает завершения этого будущего и возвращает его результат. |
T |
get |
Ожидает завершения этого будущего не более заданного времени и возвращает его результат, если он доступен. |
T |
getNow |
Возвращает значение результата (или выбросит любое возникшее исключение), если завершён, в противном случае возвращает заданное значениеIfAbsent. |
int |
getNumberOfDependents() |
Возвращает приблизительное количество CompletableFutures, чьё завершение ожидает завершения этого CompletableFuture. |
<U> CompletableFuture |
handle |
Возвращает новый CompletionStage, который, когда этот этап завершается нормально или с исключением, выполняется с результатом и исключением этого этапа в качестве аргументов для предоставленной функции. |
<U> CompletableFuture |
handleAsync |
Возвращает новый CompletionStage, который, когда этот этап завершается нормально или с исключением, выполняется с использованием стандартного асинхронного механизма выполнения этого этапа, с результатом и исключением этого этапа в качестве аргументов для предоставленной функции. |
<U> CompletableFuture |
handleAsync |
Возвращает новый CompletionStage, который, когда этот этап завершается нормально или с исключением, выполняется с использованием предоставленного исполнителя, с результатом и исключением этого этапа в качестве аргументов для предоставленной функции. |
boolean |
isCancelled() |
Возвращает true если этот CompletableFuture был отменён до его нормального завершения. |
boolean |
isCompletedExceptionally() |
Возвращает true если этот CompletableFuture завершился с исключением каким-либо способом. |
boolean |
isDone() |
Возвращает true если завершён каким-либо способом: нормально, с исключением или с помощью отмены. |
T |
join() |
Возвращает значение результата при завершении, или выбрасывает (непроверенное) исключение, если завершился с исключением. |
CompletionStage |
minimalCompletionStage() |
Возвращает новый CompletionStage, который завершается нормально тем же значением, что и этот CompletableFuture, при его нормальном завершении, и не может быть независимо завершен или использован другими способами, не определенными методами интерфейса CompletionStage. |
<U> CompletableFuture |
newIncompleteFuture() |
Возвращает новый незавершенный CompletableFuture типа, который будет возвращен методом CompletionStage. |
void |
obtrudeException |
Принудительно вызывает последующие вызовы метода get() и связанных методов, чтобы выбросить заданное исключение, независимо от того, завершился ли он или нет. |
void |
obtrudeValue |
Принудительно устанавливает или сбрасывает значение, возвращаемое позже методом get() и связанными методами, независимо от того, завершился ли он или нет. |
CompletableFuture |
orTimeout |
Исключительно завершает этот CompletableFuture с TimeoutException, если он не завершился до заданного таймаута. |
CompletableFuture |
runAfterBoth |
Возвращает новый CompletionStage, который, когда этот и другой заданный этап завершаются нормально, выполняет заданное действие. |
CompletableFuture |
runAfterBothAsync |
Возвращает новый CompletionStage, который, когда этот и другой заданный этап завершаются нормально, выполняет заданное действие, используя стандартный асинхронный механизм выполнения этого этапа. |
CompletableFuture |
runAfterBothAsync |
Возвращает новый CompletionStage, который, когда этот и другой заданный этап завершаются нормально, выполняет заданное действие, используя предоставленный Executor. |
CompletableFuture |
runAfterEither |
Возвращает новый CompletionStage, который, когда этот или другой заданный этап завершатся нормально, выполняет заданное действие. |
CompletableFuture |
runAfterEitherAsync |
Возвращает новый CompletionStage, который, когда этот или другой заданный этап завершатся нормально, выполняет заданное действие, используя стандартную асинхронную среду выполнения этого этапа. |
CompletableFuture |
runAfterEitherAsync |
Возвращает новый CompletionStage, который, когда этот или другой заданный этап завершатся нормально, выполняет заданное действие, используя предоставленный Executor. |
static CompletableFuture |
runAsync |
Возвращает новый CompletableFuture, который асинхронно завершается задачей, выполняемой в ForkJoinPool.commonPool(), после выполнения заданного действия. |
static CompletableFuture |
runAsync |
Возвращает новый CompletableFuture, который асинхронно завершается задачей, выполняемой в заданном Executor после выполнения заданного действия. |
static <U> CompletableFuture |
supplyAsync |
Возвращает новый CompletableFuture, который асинхронно завершается задачей, выполняемой в ForkJoinPool.commonPool() со значением, полученным путем вызова заданного Supplier. |
static <U> CompletableFuture |
supplyAsync |
Возвращает новый CompletableFuture, который асинхронно завершается задачей, выполняемой в заданном Executor со значением, полученным путем вызова заданного Supplier. |
CompletableFuture |
thenAccept |
Возвращает новый CompletionStage, который, когда этот этап завершится нормально, выполняется с результатом этого этапа в качестве аргумента для предоставленного действия. |
CompletableFuture |
thenAcceptAsync |
Возвращает новый CompletionStage, который, когда этот этап завершится нормально, выполняется с помощью стандартной асинхронной среды выполнения этого этапа, с результатом этого этапа в качестве аргумента для предоставленного действия. |
CompletableFuture |
thenAcceptAsync |
Возвращает новый CompletionStage, который, когда этот этап завершится нормально, выполняется с использованием предоставленного Executor, с результатом этого этапа в качестве аргумента для предоставленного действия. |
<U> CompletableFuture |
thenAcceptBoth |
Возвращает новый CompletionStage, который, когда этот и другой заданный этап оба завершатся нормально, выполняется с двумя результатами в качестве аргументов для предоставленного действия. |
<U> CompletableFuture |
thenAcceptBothAsync |
Возвращает новый CompletionStage, который, когда этот и другой заданный этап оба завершатся нормально, выполняется с помощью стандартной асинхронной среды выполнения этого этапа, с двумя результатами в качестве аргументов для предоставленного действия. |
<U> CompletableFuture |
thenAcceptBothAsync |
Возвращает новый CompletionStage, который, когда этот и другой заданный этап оба завершатся нормально, выполняется с использованием предоставленного executor, с двумя результатами в качестве аргументов для предоставленного действия. |
<U> CompletableFuture |
thenApply |
Возвращает новый CompletionStage, который, когда этот этап завершится нормально, выполняется с результатом этого этапа в качестве аргумента для предоставленной функции. |
<U> CompletableFuture |
thenApplyAsync |
Возвращает новый CompletionStage, который, когда этот этап завершится нормально, выполняется с помощью стандартной асинхронной среды выполнения этого этапа, с результатом этого этапа в качестве аргумента для предоставленной функции. |
<U> CompletableFuture |
thenApplyAsync |
Возвращает новый CompletionStage, который, когда этот этап завершится нормально, выполняется с использованием предоставленного Executor, с результатом этого этапа в качестве аргумента для предоставленной функции. |
<U, |
thenCombine |
Возвращает новый CompletionStage, который, когда этот и другой заданный этап оба завершатся нормально, выполняется с двумя результатами в качестве аргументов для предоставленной функции. |
<U, |
thenCombineAsync |
Возвращает новый CompletionStage, который, когда этот и другой заданный этап оба завершатся нормально, выполняется с помощью стандартной асинхронной среды выполнения этого этапа, с двумя результатами в качестве аргументов для предоставленной функции. |
<U, |
thenCombineAsync |
Возвращает новый CompletionStage, который, когда этот и другой заданный этап оба завершатся нормально, выполняется с использованием предоставленного executor, с двумя результатами в качестве аргументов для предоставленной функции. |
<U> CompletableFuture |
thenCompose |
Возвращает новый CompletionStage, завершаемый тем же значением, что и CompletionStage, возвращаемый предоставленной функцией. |
<U> CompletableFuture |
thenComposeAsync |
Возвращает новый CompletionStage, завершаемый тем же значением, что и CompletionStage, возвращаемый предоставленной функцией, выполняемый в стандартной асинхронной среде выполнения этого этапа. |
<U> CompletableFuture |
thenComposeAsync |
Возвращает новый CompletionStage, завершаемый тем же значением, что и CompletionStage, возвращаемый предоставленной функцией, выполняемый с использованием предоставленного Executor. |
CompletableFuture |
thenRun |
Возвращает новый CompletionStage, который, когда этот этап завершится нормально, выполнит заданное действие. |
CompletableFuture |
thenRunAsync |
Возвращает новый CompletionStage, который, когда этот этап завершится нормально, выполнит заданное действие с помощью стандартной асинхронной среды выполнения этого этапа. |
CompletableFuture |
thenRunAsync |
Возвращает новый CompletionStage, который, когда этот этап завершится нормально, выполнит заданное действие с использованием предоставленного Executor. |
CompletableFuture |
toCompletableFuture() |
Возвращает этот CompletableFuture. |
String |
toString() |
Возвращает строку, идентифицирующую этот CompletableFuture, а также его состояние завершения. |
CompletableFuture |
whenComplete |
Возвращает новый CompletionStage с тем же результатом или исключением, что и этот этап, который выполнит заданное действие, когда этот этап завершится. |
CompletableFuture |
whenCompleteAsync |
Возвращает новый CompletionStage с тем же результатом или исключением, что и этот этап, который выполнит заданное действие с помощью стандартной асинхронной среды выполнения этого этапа, когда этот этап завершится. |
CompletableFuture |
whenCompleteAsync |
Возвращает новый CompletionStage с тем же результатом или исключением, что и этот этап, который выполнит заданное действие с помощью предоставленного Executor, когда этот этап завершится. |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Методы, объявленные в интерфейсе java.util.concurrent.CompletionStage
exceptionallyAsync, exceptionallyAsync, exceptionallyCompose, exceptionallyComposeAsync, exceptionallyComposeAsync
Методы, объявленные в интерфейсе java.util.concurrent.Future
exceptionNow, resultNow, state
Подробное описание конструкторов
CompletableFuture
public CompletableFuture()
Подробное описание методов
supplyAsync
public static <U> CompletableFuture<U> supplyAsync(Supplier<U> supplier)
ForkJoinPool.commonPool(), со значением, полученным путём вызова заданного Supplier.- Параметры типа:
-
U- тип возвращаемого значения функции - Параметры:
-
supplier- функция, возвращающая значение, используемое для завершения возвращаемой CompletableFuture - Возвращает:
- новую CompletableFuture
supplyAsync
public static <U> CompletableFuture<U> supplyAsync(Supplier<U> supplier, Executor executor)
- Параметры типа:
-
U- тип возвращаемого значения функции - Параметры:
-
supplier- функция, возвращающая значение, используемое для завершения возвращаемой CompletableFuture -
executor- исполнитель для асинхронного выполнения - Возвращает:
- новую CompletableFuture
runAsync
public static CompletableFuture<Void> runAsync(Runnable runnable)
ForkJoinPool.commonPool() после выполнения заданного действия.- Параметры:
-
runnable- действие, которое нужно выполнить перед завершением возвращаемой CompletableFuture - Возвращает:
- новую CompletableFuture
runAsync
public static CompletableFuture<Void> runAsync(Runnable runnable, Executor executor)
- Параметры:
-
runnable- действие, которое нужно выполнить перед завершением возвращаемой CompletableFuture -
executor- исполнитель для асинхронного выполнения - Возвращает:
- новую CompletableFuture
completedFuture
public static <U> CompletableFuture<U> completedFuture(U value)
- Параметры типа:
-
U- тип значения - Параметры:
-
value- значение - Возвращает:
- завершенную CompletableFuture
isDone
public boolean isDone()
true , если завершена каким-либо способом: обычно, с исключением или через отмену.- Определено в:
-
isDoneв интерфейсеFuture<T> - Возвращает:
-
true, если завершена
get
public T get() throws InterruptedException, ExecutionException
- Определено в:
-
getв интерфейсеFuture<T> - Возвращает:
- значение результата
- Исключения:
-
CancellationException- если эта задача была отменена -
ExecutionException- если эта задача завершилась с исключением -
InterruptedException- если текущий поток был прерван во время ожидания
get
public T get(long timeout, TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException
- Определено в:
-
getв интерфейсеFuture<T> - Параметры:
-
timeout- максимальное время ожидания -
unit- единица измерения времени аргумента тайм-аута - Возвращает:
- значение результата
- Исключения:
-
CancellationException- если эта задача была отменена -
ExecutionException- если эта задача завершилась с исключением -
InterruptedException- если текущий поток был прерван во время ожидания -
TimeoutException- если ожидание истекло
join
public T join()
CompletionException с базовым исключением в качестве причины.- Возвращает:
- значение результата
- Исключения:
-
CancellationException- если вычисление было отменено -
CompletionException- если эта задача завершилась с исключением или вычисление завершения вызвало исключение
getNow
public T getNow(T valueIfAbsent)
- Параметры:
-
valueIfAbsent- значение, возвращаемое, если не завершено - Возвращает:
- значение результата, если завершено, в противном случае заданное valueIfAbsent
- Исключения:
-
CancellationException- если вычисление было отменено -
CompletionException- если эта задача завершилась с исключением или вычисление завершения вызвало исключение
complete
public boolean complete(T value)
get() и связанными методами, до заданного значения.- Параметры:
-
value- значение результата - Возвращает:
-
true, если это вызов привело к переходу этой CompletableFuture в состояние завершения, в противном случаеfalse
completeExceptionally
public boolean completeExceptionally(Throwable ex)
get() и связанных методов для выброса заданного исключения.- Параметры:
-
ex- исключение - Возвращает:
-
true, если этот вызов перевел эту CompletableFuture в завершенное состояние, иначеfalse
thenApply
public <U> CompletableFuture<U> thenApply(Function<? super T,? extends U> fn)
CompletionStageЭтот метод аналогичен Optional.map и Stream.map.
См. документацию CompletionStage для правил, охватывающих исключительное завершение.
- Определено в:
-
thenApplyв интерфейсеCompletionStage<T> - Параметры типа:
-
U- тип возвращаемого значения функции - Параметры:
-
fn- функция для вычисления значения возвращаемой CompletionStage - Возвращает:
- новая CompletionStage
thenApplyAsync
public <U> CompletableFuture<U> thenApplyAsync(Function<? super T,? extends U> fn)
CompletionStageCompletionStage для правил, охватывающих исключительное завершение.- Определено в:
-
thenApplyAsyncв интерфейсеCompletionStage<T> - Параметры типа:
-
U- тип возвращаемого значения функции - Параметры:
-
fn- функция для вычисления значения возвращаемой CompletionStage - Возвращает:
- новая CompletionStage
thenApplyAsync
public <U> CompletableFuture<U> thenApplyAsync(Function<? super T,? extends U> fn, Executor executor)
CompletionStageCompletionStage для правил, охватывающих исключительное завершение.- Определено в:
-
thenApplyAsyncв интерфейсеCompletionStage<T> - Параметры типа:
-
U- тип возвращаемого значения функции - Параметры:
-
fn- функция для вычисления значения возвращаемой CompletionStage -
executor- исполнитель для асинхронного выполнения - Возвращает:
- новая CompletionStage
thenAccept
public CompletableFuture<Void> thenAccept(Consumer<? super T> action)
CompletionStageCompletionStage для правил, охватывающих исключительное завершение.- Указано в:
-
thenAcceptв интерфейсеCompletionStage<T> - Параметры:
-
action- действие, которое необходимо выполнить перед завершением возвращаемого CompletionStage - Возвращает:
- новый CompletionStage
thenAcceptAsync
public CompletableFuture<Void> thenAcceptAsync(Consumer<? super T> action)
CompletionStageCompletionStage для правил, охватывающих исключительное завершение.- Указано в:
-
thenAcceptAsyncв интерфейсеCompletionStage<T> - Параметры:
-
action- действие, которое необходимо выполнить перед завершением возвращаемого CompletionStage - Возвращает:
- новый CompletionStage
thenAcceptAsync
public CompletableFuture<Void> thenAcceptAsync(Consumer<? super T> action, Executor executor)
CompletionStageCompletionStage для правил, охватывающих исключительное завершение.- Указано в:
-
thenAcceptAsyncв интерфейсеCompletionStage<T> - Параметры:
-
action- действие, которое необходимо выполнить перед завершением возвращаемого CompletionStage -
executor- исполняющий механизм, который необходимо использовать для асинхронного выполнения - Возвращает:
- новый CompletionStage
thenRun
public CompletableFuture<Void> thenRun(Runnable action)
CompletionStageCompletionStage для правил, охватывающих исключительное завершение.- Указано в:
-
thenRunв интерфейсеCompletionStage<T> - Параметры:
-
action- действие, которое необходимо выполнить перед завершением возвращаемого CompletionStage - Возвращает:
- новый CompletionStage
thenRunAsync
public CompletableFuture<Void> thenRunAsync(Runnable action)
CompletionStageCompletionStage для правил, охватывающих исключительное завершение.- Указано в:
-
thenRunAsyncв интерфейсеCompletionStage<T> - Параметры:
-
action- действие, которое необходимо выполнить перед завершением возвращаемого CompletionStage - Возвращает:
- новый CompletionStage
thenRunAsync
public CompletableFuture<Void> thenRunAsync(Runnable action, Executor executor)
CompletionStageCompletionStage для правил, охватывающих исключительное завершение.- Указано в:
-
thenRunAsyncв интерфейсеCompletionStage<T> - Параметры:
-
action- действие, которое необходимо выполнить перед завершением возвращаемого CompletionStage -
executor- исполняющий механизм, который необходимо использовать для асинхронного выполнения - Возвращает:
- новый CompletionStage
thenCombine
public <U, V> CompletableFuture<V> thenCombine(CompletionStage<? extends U> other, BiFunction<? super T,? super U,? extends V> fn)
CompletionStageCompletionStage для правил, охватывающих исключительное завершение.- Указано в:
-
thenCombineв интерфейсеCompletionStage<T> - Параметры типа:
-
U- тип результата другого CompletionStage -
V- тип возвращаемого значения функции - Параметры:
-
other- другой CompletionStage -
fn- функция, которая будет использоваться для вычисления значения возвращаемого CompletionStage - Возвращает:
- новый CompletionStage
thenCombineAsync
public <U, V> CompletableFuture<V> thenCombineAsync(CompletionStage<? extends U> other, BiFunction<? super T,? super U,? extends V> fn)
CompletionStageCompletionStage для правил, охватывающих исключительное завершение.- Указано в:
-
thenCombineAsyncв интерфейсеCompletionStage<T> - Параметры типа:
-
U- тип результата другого CompletionStage -
V- тип возвращаемого значения функции - Параметры:
-
other- другой CompletionStage -
fn- функция, которая будет использоваться для вычисления значения возвращаемого CompletionStage - Возвращает:
- новый CompletionStage
thenCombineAsync
public <U, V> CompletableFuture<V> thenCombineAsync(CompletionStage<? extends U> other, BiFunction<? super T,? super U,? extends V> fn, Executor executor)
CompletionStageCompletionStage для правил, охватывающих исключительное завершение.- Указано в:
-
thenCombineAsyncв интерфейсеCompletionStage<T> - Параметры типа:
-
U- тип результата другого CompletionStage -
V- тип возвращаемого значения функции - Параметры:
-
other- другой CompletionStage -
fn- функция, которая будет использоваться для вычисления значения возвращаемого CompletionStage -
executor- исполняющий механизм, который необходимо использовать для асинхронного выполнения - Возвращает:
- новый CompletionStage
thenAcceptBoth
public <U> CompletableFuture<Void> thenAcceptBoth(CompletionStage<? extends U> other, BiConsumer<? super T,? super U> action)
CompletionStageCompletionStage для правил, охватывающих исключительное завершение.- Указано в:
-
thenAcceptBothв интерфейсеCompletionStage<T> - Параметры типа:
-
U- тип результата другого CompletionStage - Параметры:
-
other- другой CompletionStage -
action- действие, которое необходимо выполнить перед завершением возвращаемого CompletionStage - Возвращает:
- новый CompletionStage
thenAcceptBothAsync
public <U> CompletableFuture<Void> thenAcceptBothAsync(CompletionStage<? extends U> other, BiConsumer<? super T,? super U> action)
CompletionStageCompletionStage для правил, охватывающих исключительное завершение.- Указано в:
-
thenAcceptBothAsyncв интерфейсеCompletionStage<T> - Параметры типа:
-
U- тип результата другого CompletionStage - Параметры:
-
other- другой CompletionStage -
action- действие, которое необходимо выполнить перед завершением возвращаемого CompletionStage - Возвращает:
- новый CompletionStage
thenAcceptBothAsync
public <U> CompletableFuture<Void> thenAcceptBothAsync(CompletionStage<? extends U> other, BiConsumer<? super T,? super U> action, Executor executor)
CompletionStageCompletionStage для правил обработки исключительного завершения.- Определено в:
-
thenAcceptBothAsyncв интерфейсеCompletionStage<T> - Параметры типа:
-
U- тип результата другого CompletionStage - Параметры:
-
other- другой CompletionStage -
action- действие, которое должно быть выполнено перед завершением возвращаемого CompletionStage -
executor- исполнитель для использования при асинхронном выполнении - Возвращает:
- новый CompletionStage
runAfterBoth
public CompletableFuture<Void> runAfterBoth(CompletionStage<?> other, Runnable action)
CompletionStageCompletionStage для правил обработки исключительного завершения.- Определено в:
-
runAfterBothв интерфейсеCompletionStage<T> - Параметры:
-
other- другой CompletionStage -
action- действие, которое должно быть выполнено перед завершением возвращаемого CompletionStage - Возвращает:
- новый CompletionStage
runAfterBothAsync
public CompletableFuture<Void> runAfterBothAsync(CompletionStage<?> other, Runnable action)
CompletionStageCompletionStage для правил обработки исключительного завершения.- Определено в:
-
runAfterBothAsyncв интерфейсеCompletionStage<T> - Параметры:
-
other- другой CompletionStage -
action- действие, которое должно быть выполнено перед завершением возвращаемого CompletionStage - Возвращает:
- новый CompletionStage
runAfterBothAsync
public CompletableFuture<Void> runAfterBothAsync(CompletionStage<?> other, Runnable action, Executor executor)
CompletionStageCompletionStage для правил обработки исключительного завершения.- Определено в:
-
runAfterBothAsyncв интерфейсеCompletionStage<T> - Параметры:
-
other- другой CompletionStage -
action- действие, которое должно быть выполнено перед завершением возвращаемого CompletionStage -
executor- исполнитель для использования при асинхронном выполнении - Возвращает:
- новый CompletionStage
applyToEither
public <U> CompletableFuture<U> applyToEither(CompletionStage<? extends T> other, Function<? super T,U> fn)
CompletionStageCompletionStage для правил обработки исключительного завершения.- Определено в:
-
applyToEitherв интерфейсеCompletionStage<T> - Параметры типа:
-
U- тип возвращаемого значения функции - Параметры:
-
other- другой CompletionStage -
fn- функция для вычисления значения возвращаемого CompletionStage - Возвращает:
- новый CompletionStage
applyToEitherAsync
public <U> CompletableFuture<U> applyToEitherAsync(CompletionStage<? extends T> other, Function<? super T,U> fn)
CompletionStageCompletionStage для правил обработки исключительного завершения.- Определено в:
-
applyToEitherAsyncв интерфейсеCompletionStage<T> - Параметры типа:
-
U- тип возвращаемого значения функции - Параметры:
-
other- другой CompletionStage -
fn- функция для вычисления значения возвращаемого CompletionStage - Возвращает:
- новый CompletionStage
applyToEitherAsync
public <U> CompletableFuture<U> applyToEitherAsync(CompletionStage<? extends T> other, Function<? super T,U> fn, Executor executor)
CompletionStageCompletionStage для правил обработки исключительного завершения.- Определено в:
-
applyToEitherAsyncв интерфейсеCompletionStage<T> - Параметры типа:
-
U- тип возвращаемого значения функции - Параметры:
-
other- другой CompletionStage -
fn- функция для вычисления значения возвращаемого CompletionStage -
executor- исполнитель для использования при асинхронном выполнении - Возвращает:
- новый CompletionStage
acceptEither
public CompletableFuture<Void> acceptEither(CompletionStage<? extends T> other, Consumer<? super T> action)
CompletionStageCompletionStage для правил обработки исключительного завершения.- Определено в:
-
acceptEitherв интерфейсеCompletionStage<T> - Параметры:
-
other- другой CompletionStage -
action- действие, которое должно быть выполнено перед завершением возвращаемого CompletionStage - Возвращает:
- новый CompletionStage
acceptEitherAsync
public CompletableFuture<Void> acceptEitherAsync(CompletionStage<? extends T> other, Consumer<? super T> action)
CompletionStageCompletionStage для правил обработки исключительного завершения.- Определено в:
-
acceptEitherAsyncв интерфейсеCompletionStage<T> - Параметры:
-
other- другой CompletionStage -
action- действие, которое должно быть выполнено перед завершением возвращаемого CompletionStage - Возвращает:
- новый CompletionStage
acceptEitherAsync
public CompletableFuture<Void> acceptEitherAsync(CompletionStage<? extends T> other, Consumer<? super T> action, Executor executor)
CompletionStageCompletionStage для правил обработки исключительного завершения.- Определено в:
-
acceptEitherAsyncв интерфейсеCompletionStage<T> - Параметры:
-
other- другой CompletionStage -
action- действие, которое должно быть выполнено перед завершением возвращаемого CompletionStage -
executor- исполнитель для использования при асинхронном выполнении - Возвращает:
- новый CompletionStage
runAfterEither
public CompletableFuture<Void> runAfterEither(CompletionStage<?> other, Runnable action)
CompletionStageCompletionStage для правил, охватывающих исключительное завершение.- Определено в:
-
runAfterEitherв интерфейсеCompletionStage<T> - Параметры:
-
other- другой CompletionStage -
action- действие, которое нужно выполнить перед завершением возвращаемого CompletionStage - Возвращает:
- новый CompletionStage
runAfterEitherAsync
public CompletableFuture<Void> runAfterEitherAsync(CompletionStage<?> other, Runnable action)
CompletionStageCompletionStage для правил, охватывающих исключительное завершение.- Определено в:
-
runAfterEitherAsyncв интерфейсеCompletionStage<T> - Параметры:
-
other- другой CompletionStage -
action- действие, которое нужно выполнить перед завершением возвращаемого CompletionStage - Возвращает:
- новый CompletionStage
runAfterEitherAsync
public CompletableFuture<Void> runAfterEitherAsync(CompletionStage<?> other, Runnable action, Executor executor)
CompletionStageCompletionStage для правил, охватывающих исключительное завершение.- Определено в:
-
runAfterEitherAsyncв интерфейсеCompletionStage<T> - Параметры:
-
other- другой CompletionStage -
action- действие, которое нужно выполнить перед завершением возвращаемого CompletionStage -
executor- executor, который нужно использовать для асинхронного выполнения - Возвращает:
- новый CompletionStage
thenCompose
public <U> CompletableFuture<U> thenCompose(Function<? super T,? extends CompletionStage<U>> fn)
CompletionStageКогда этот этап завершается нормально, заданная функция вызывается с результатом этого этапа в качестве аргумента, возвращая другой CompletionStage. Когда этот этап завершается нормально, CompletionStage, возвращаемый этим методом, завершается тем же значением.
Для обеспечения прогресса, заданная функция должна обеспечить конечное завершение своего результата.
Этот метод аналогичен Optional.flatMap и Stream.flatMap.
См. документацию CompletionStage для правил, охватывающих исключительное завершение.
- Определено в:
-
thenComposeв интерфейсеCompletionStage<T> - Параметры типа:
-
U- тип результата возвращаемого CompletionStage - Параметры:
-
fn- функция, используемая для вычисления другого CompletionStage - Возвращает:
- новый CompletionStage
thenComposeAsync
public <U> CompletableFuture<U> thenComposeAsync(Function<? super T,? extends CompletionStage<U>> fn)
CompletionStageКогда этот этап завершается нормально, заданная функция вызывается с результатом этого этапа в качестве аргумента, возвращая другой CompletionStage. Когда этот этап завершается нормально, CompletionStage, возвращаемый этим методом, завершается тем же значением.
Для обеспечения прогресса, заданная функция должна обеспечить конечное завершение своего результата.
См. документацию CompletionStage для правил, охватывающих исключительное завершение.
- Определено в:
-
thenComposeAsyncв интерфейсеCompletionStage<T> - Параметры типа:
-
U- тип результата возвращаемого CompletionStage - Параметры:
-
fn- функция, используемая для вычисления другого CompletionStage - Возвращает:
- новый CompletionStage
thenComposeAsync
public <U> CompletableFuture<U> thenComposeAsync(Function<? super T,? extends CompletionStage<U>> fn, Executor executor)
CompletionStageКогда этот этап завершается нормально, заданная функция вызывается с результатом этого этапа в качестве аргумента, возвращая другой CompletionStage. Когда этот этап завершается нормально, CompletionStage, возвращаемый этим методом, завершается тем же значением.
Для обеспечения прогресса, заданная функция должна обеспечить конечное завершение своего результата.
См. документацию CompletionStage для правил, охватывающих исключительное завершение.
- Определено в:
-
thenComposeAsyncв интерфейсеCompletionStage<T> - Параметры типа:
-
U- тип результата возвращаемого CompletionStage - Параметры:
-
fn- функция, используемая для вычисления другого CompletionStage -
executor- executor, который нужно использовать для асинхронного выполнения - Возвращает:
- новый CompletionStage
whenComplete
public CompletableFuture<T> whenComplete(BiConsumer<? super T,? super Throwable> action)
nullКогда этот этап завершен, заданное действие вызывается с результатом (или null если его нет) и исключением (или null если его нет) этого этапа в качестве аргументов. Возвращаемый этап завершается, когда действие возвращается.
В отличие от метода handle, этот метод не предназначен для преобразования результатов завершения, поэтому заданное действие не должно генерировать исключение. Однако, если это произойдет, применяются следующие правила: если этот этап завершился нормально, но заданное действие генерирует исключение, то возвращаемый этап завершается с исключением заданного действия. Или, если этот этап завершился с исключением и заданное действие генерирует исключение, то возвращаемый этап завершается с исключением этого этапа.
- Определено в:
-
whenCompleteв интерфейсеCompletionStage<T> - Параметры:
-
action- действие, которое нужно выполнить - Возвращает:
- новый CompletionStage
whenCompleteAsync
public CompletableFuture<T> whenCompleteAsync(BiConsumer<? super T,? super Throwable> action)
CompletionStageКогда этот этап завершен, заданное действие вызывается с результатом (или null если его нет) и исключением (или null если его нет) этого этапа в качестве аргументов. Возвращаемый этап завершается, когда действие возвращается.
В отличие от метода handleAsync, этот метод не предназначен для преобразования результатов завершения, поэтому заданное действие не должно генерировать исключение. Однако, если это произойдет, применяются следующие правила: если этот этап завершился нормально, но заданное действие генерирует исключение, то возвращаемый этап завершается с исключением заданного действия. Или, если этот этап завершился с исключением и заданное действие генерирует исключение, то возвращаемый этап завершается с исключением этого этапа.
- Определено в:
-
whenCompleteAsyncв интерфейсеCompletionStage<T> - Параметры:
-
action- действие, которое нужно выполнить - Возвращает:
- новый CompletionStage
whenCompleteAsync
public CompletableFuture<T> whenCompleteAsync(BiConsumer<? super T,? super Throwable> action, Executor executor)
CompletionStageКогда этот этап завершается, указанное действие вызывается с результатом (или null если его нет) и исключением (или null если его нет) этого этапа в качестве аргументов. Возвращаемый этап завершается, когда действие возвращает результат.
В отличие от метода handleAsync, этот метод не предназначен для преобразования результатов завершения, поэтому предоставленное действие не должно генерировать исключение. Однако, если это произойдет, применяются следующие правила: если этот этап завершился нормально, но предоставленное действие генерирует исключение, то возвращаемый этап завершается с исключением, сгенерированным этим действием. Или, если этот этап завершился с исключением и предоставленное действие генерирует исключение, то возвращаемый этап завершается с исключением этого этапа.
- Specified by:
-
whenCompleteAsyncв интерфейсеCompletionStage<T> - Parameters:
-
action- действие для выполнения -
executor- executor для использования в асинхронном выполнении - Returns:
- новая CompletionStage
handle
public <U> CompletableFuture<U> handle(BiFunction<? super T,Throwable,? extends U> fn)
CompletionStageКогда этот этап завершается, заданная функция вызывается с результатом (или null если его нет) и исключением (или null если его нет) этого этапа в качестве аргументов, а результат функции используется для завершения возвращаемого этапа.
- Specified by:
-
handleв интерфейсеCompletionStage<T> - Type Parameters:
-
U- тип возвращаемого значения функции - Parameters:
-
fn- функция для вычисления значения возвращаемой CompletionStage - Returns:
- новая CompletionStage
handleAsync
public <U> CompletableFuture<U> handleAsync(BiFunction<? super T,Throwable,? extends U> fn)
CompletionStageКогда этот этап завершается, заданная функция вызывается с результатом (или null если его нет) и исключением (или null если его нет) этого этапа в качестве аргументов, а результат функции используется для завершения возвращаемого этапа.
- Specified by:
-
handleAsyncв интерфейсеCompletionStage<T> - Type Parameters:
-
U- тип возвращаемого значения функции - Parameters:
-
fn- функция для вычисления значения возвращаемой CompletionStage - Returns:
- новая CompletionStage
handleAsync
public <U> CompletableFuture<U> handleAsync(BiFunction<? super T,Throwable,? extends U> fn, Executor executor)
CompletionStageКогда этот этап завершается, заданная функция вызывается с результатом (или null если его нет) и исключением (или null если его нет) этого этапа в качестве аргументов, а результат функции используется для завершения возвращаемого этапа.
- Specified by:
-
handleAsyncв интерфейсеCompletionStage<T> - Type Parameters:
-
U- тип возвращаемого значения функции - Parameters:
-
fn- функция для вычисления значения возвращаемой CompletionStage -
executor- executor для использования в асинхронном выполнении - Returns:
- новая CompletionStage
toCompletableFuture
public CompletableFuture<T> toCompletableFuture()
- Specified by:
-
toCompletableFutureв интерфейсеCompletionStage<T> - Returns:
- этот CompletableFuture
exceptionally
public CompletableFuture<T> exceptionally(Function<Throwable,? extends T> fn)
CompletionStage- Specified by:
-
exceptionallyв интерфейсеCompletionStage<T> - Parameters:
-
fn- функция для вычисления значения возвращаемой CompletionStage, если этот CompletableFuture завершился с исключением - Returns:
- новая CompletionStage
allOf
public static CompletableFuture<Void> allOf(CompletableFuture<?>... cfs)
null. Среди применений этого метода - ожидание завершения набора независимых CompletableFuture перед продолжением программы, как в: CompletableFuture.allOf(c1, c2,
c3).join();.
- Parameters:
-
cfs- CompletableFuture - Returns:
- новый CompletableFuture, который завершается, когда все заданные CompletableFuture завершатся
- Throws:
-
NullPointerException- если массив или любой его элемент являетсяnull
anyOf
public static CompletableFuture<Object> anyOf(CompletableFuture<?>... cfs)
- Parameters:
-
cfs- CompletableFuture - Returns:
- новый CompletableFuture, который завершается с результатом или исключением любого из заданных CompletableFuture, когда один завершается
- Throws:
-
NullPointerException- если массив или любой его элемент являетсяnull
cancel
public boolean cancel(boolean mayInterruptIfRunning)
CancellationException. Зависимые CompletableFuture, которые еще не завершились, также завершатся с исключением, с CompletionException вызванным этим CancellationException.- Specified by:
-
cancelв интерфейсеFuture<T> - Parameters:
-
mayInterruptIfRunning- это значение не имеет эффекта в этой реализации, так как прерывания не используются для управления обработкой. - Returns:
-
trueесли эта задача сейчас отменена
isCancelled
public boolean isCancelled()
true если этот CompletableFuture был отменен до завершения нормально.- Specified by:
-
isCancelledв интерфейсеFuture<T> - Returns:
-
trueесли этот CompletableFuture был отменен до его нормального завершения
isCompletedExceptionally
public boolean isCompletedExceptionally()
true если этот CompletableFuture завершился с исключением, каким-либо образом. Возможные причины включают отмену, явное вызов
completeExceptionally, и внезапное завершение действия CompletionStage.- Returns:
-
trueесли этот CompletableFuture завершился с исключением
obtrudeValue
public void obtrudeValue(T value)
get() и связанными методами, независимо от того, завершен ли он уже. Этот метод предназначен для использования только в действиях по восстановлению от ошибок, и даже в таких ситуациях может привести к продолжению зависимых завершений, использующих установленные по сравнению с перезаписанными результатами.- Parameters:
-
value- значение завершения
ВызватьИсключение
public void obtrudeException(Throwable ex)
get() и связанных методов с выбрасыванием данного исключения, вне зависимости от того, завершился ли он уже или нет. Данный метод предназначен только для действий по восстановлению от ошибок, и даже в таких ситуациях может привести к продолжающимся зависимым завершениям с использованием установленных, а не перезаписанных результатов.- Параметры:
-
ex- исключение - Исключения:
-
NullPointerException- если исключение равно null
ПолучитьКоличествоЗависимых
public int getNumberOfDependents()
- Возвращает:
- количество зависимых CompletableFutures
toString
public String toString()
"Completed Normally" или строку
"Completed Exceptionally", или строку "Not
completed", за которой следует количество CompletableFutures, зависящих от его завершения, если таковые имеются.- Переопределяет:
-
toStringв классеObject - Возвращает:
- строку, идентифицирующую данный CompletableFuture и его состояние
newIncompleteFuture
public <U> CompletableFuture<U> newIncompleteFuture()
- Параметры типа:
-
U- тип значения - Возвращает:
- новый CompletableFuture
- С:
- 9
defaultExecutor
public Executor defaultExecutor()
ForkJoinPool.commonPool(), если он поддерживает более одной параллельной нити, в противном случае Executor, использующий одну нить на асинхронную задачу. Данный метод может быть переопределён в подклассах для возврата Executor, обеспечивающего по крайней мере одну независимую нить.- Возвращает:
- executor
- С:
- 9
копия
public CompletableFuture<T> copy()
thenApply(x -> x). Этот метод может быть полезен в качестве «защитной копии», чтобы предотвратить завершение клиентами, при этом всё ещё имея возможность организовать зависимые действия.- Возвращает:
- новый CompletableFuture
- С:
- 9
минимальнаяCompletionStage
public CompletionStage<T> minimalCompletionStage()
CompletionStage. Если этот CompletableFuture завершается с исключением, то возвращаемый CompletionStage завершается с исключением CompletionException с этим исключением как причиной. Если не переопределено в подклассе, новый не минимальный CompletableFuture со всеми доступными методами может быть получен из минимальной CompletionStage через toCompletableFuture(). Например, завершение минимального этапа может быть ожидаемо
minimalStage.toCompletableFuture().join();
- Возвращает:
- новый CompletionStage
- С:
- 9
завершитьАсинхронно
public CompletableFuture<T> completeAsync(Supplier<? extends T> supplier, Executor executor)
- Параметры:
-
supplier- функция, возвращающая значение, используемое для завершения данного CompletableFuture -
executor- executor для использования в асинхронном выполнении - Возвращает:
- данный CompletableFuture
- С:
- 9
завершитьАсинхронно
public CompletableFuture<T> completeAsync(Supplier<? extends T> supplier)
- Параметры:
-
supplier- функция, возвращающая значение, используемое для завершения данного CompletableFuture - Возвращает:
- данный CompletableFuture
- С:
- 9
илиТаймаут
public CompletableFuture<T> orTimeout(long timeout, TimeUnit unit)
TimeoutException, если он не завершается иначе до указанного таймаута.- Параметры:
-
timeout- время ожидания до исключительного завершения TimeoutException, в единицахunit -
unit- единица измерения, определяющая, как интерпретировать параметрtimeout - Возвращает:
- данный CompletableFuture
- С:
- 9
завершитьПриТаймауте
public CompletableFuture<T> completeOnTimeout(T value, long timeout, TimeUnit unit)
- Параметры:
-
value- значение, используемое при таймауте -
timeout- время ожидания до нормального завершения со значением, в единицахunit -
unit- единица измерения, определяющая, как интерпретировать параметрtimeout - Возвращает:
- данный CompletableFuture
- С:
- 9
задержанныйИсполнитель
public static Executor delayedExecutor(long delay, TimeUnit unit, Executor executor)
execute возвращённого executor.- Параметры:
-
delay- время задержки, в единицахunit -
unit- единица измерения, определяющая, как интерпретировать параметрdelay -
executor- базовый executor - Возвращает:
- новый задержанный executor
- С:
- 9
задержанныйИсполнитель
public static Executor delayedExecutor(long delay, TimeUnit unit)
execute возвращённого executor.- Параметры:
-
delay- время задержки, в единицахunit -
unit- единица измерения, определяющая, как интерпретировать параметрdelay - Возвращает:
- новый задержанный executor
- С:
- 9
завершённыйStage
public static <U> CompletionStage<U> completedStage(U value)
CompletionStage.- Параметры типа:
-
U- тип значения - Параметры:
-
value- значение - Возвращает:
- завершённый CompletionStage
- С:
- 9
неудавшийсяFuture
public static <U> CompletableFuture<U> failedFuture(Throwable ex)
- Параметры типа:
-
U- тип значения - Параметры:
-
ex- исключение - Возвращает:
- исключительно завершённый CompletableFuture
- С:
- 9
неудавшийсяStage
public static <U> CompletionStage<U> failedStage(Throwable ex)
CompletionStage.- Параметры типа:
-
U- тип значения - Параметры:
-
ex- исключение - Возвращает:
- исключительно завершённый CompletionStage
- С:
- 9
© 1993, 2023, 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/21/docs/api/java.base/java/util/concurrent/CompletableFuture.html