Spec-Zone.ru › Scala 3.2

Характер Promise.Promise

Объект-компаньон • Исходный код

характер Promise[T]

Promise — это объект, который может быть завершён значением или ошибкой.

Promise всегда должен быть в конечном итоге завершен, будь то успехом или ошибкой, чтобы избежать непреднамеренного удержания ресурсов для любых связанных обратных вызовов или преобразований Futures.

Суперагрегаты
класс Object
характер Matchable
класс Any

Абстрактные методы

Исходный код
def future: Future[T]

Future, содержащий значение этого обещания.

Исходный код
def isCompleted: Boolean

Возвращает, завершено ли обещание значением или исключением.

Примечание: использование этого метода может привести к недетерминированным конкурентным программам.

Возвращает

true если обещание уже завершено, false в противном случае

Исходный код
def tryComplete(result: Try[T]): Boolean

Попытка завершить обещание значением или исключением.

Примечание: использование этого метода может привести к недетерминированным конкурентным программам.

Возвращает

Если обещание уже завершено, возвращает false, иначе true.

Конкретные методы

Исходный код
def complete(result: Try[T]): Promise.this.type

Завершает обещание исключением или значением.

Параметры значения
result

Значение или исключение для завершения обещания. Если обещание уже выполнено, завершено ошибкой или истекло время ожидания, вызов этого метода выбросит IllegalStateException.

Исходный код
def completeWith(other: Future[T]): Promise.this.type

Завершает это обещание с указанным future, когда это future завершено.

Возвращает

Это обещание

Исходный код
def failure(cause: Throwable): Promise.this.type

Завершает обещание с исключением.

Параметры значения
cause

Исключение для завершения обещания. Если исключение, используемое для завершения этого обещания ошибкой, является ошибкой, исключением управления или исключением прерывания, оно будет обернуто как причина в ExecutionException, которое завершит обещание. Если обещание уже выполнено, завершено ошибкой или истекло время ожидания, вызов этого метода выбросит IllegalStateException.

Исходный код
def success(value: T): Promise.this.type

Завершает обещание значением.

Параметры значения
value

Значение для завершения обещания. Если обещание уже выполнено, завершено ошибкой или истекло время ожидания, вызов этого метода выбросит IllegalStateException.

Исходный код
def tryFailure(cause: Throwable): Boolean

Попытка завершить обещание исключением.

Примечание: использование этого метода может привести к недетерминированным конкурентным программам.

Возвращает

Если обещание уже завершено, возвращает false, иначе true.

Исходный код
def trySuccess(value: T): Boolean

Попытка завершить обещание значением.

Примечание: использование этого метода может привести к недетерминированным конкурентным программам.

Возвращает

Если обещание уже завершено, возвращает false, иначе true.

© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.2.0/scala/concurrent/Promise.html

Spec-Zone.ru

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