Spec-Zone.ru › Scala 2.13 Library

Объект scala.jdk.javaapi.FutureConverters

объект FutureConverters

Этот объект содержит методы для преобразования между Scala Future и Java CompletionStage.

Явные методы преобразования, определённые здесь, предназначены для использования в коде Java. Для кода Scala рекомендуется использовать расширяющие методы, определённые в scala.jdk.FutureConverters.

Обратите внимание, что мост реализован на стороне только для чтения асинхронных обработчиков, а именно Future (вместо scala.concurrent.Promise) и CompletionStage (вместо java.util.concurrent.CompletableFuture). Это сделано намеренно, так как семантика моста для записи обработчиков может привести к гонкам; если обе стороны (CompletableFuture и Promise) завершаются независимо одновременно, они могут содержать разные значения после. По этой причине toCompletableFuture не поддерживается на созданных CompletionStage.

Источник
FutureConverters.scala
Линейные супертипы
AnyRef, Any

Члены значения

final def !=(arg0: Any): Boolean

Проверка двух объектов на неравенство.

returns

true if !(this == that), false otherwise.

Определяющие классы
AnyRef → Any

final def ##(): Int

Эквивалентно x.hashCode за исключением boxed numeric типов и null. Для чисел, он возвращает хеш-значение, которое согласуется с равенством значений: если два экземпляра типа значения сравниваются как true, то ## будет производить одно и то же хеш-значение для каждого из них. Для null возвращает хеш-код, где null.hashCode выдает NullPointerException.

returns

хеш-значение, согласованное с ==

Определяющие классы
AnyRef → Any

final def ==(arg0: Any): Boolean

Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).

returns

true если получаемый объект эквивалентен аргументу; false в противном случае.

Определяющие классы
AnyRef → Any

final def asInstanceOf[T0]: T0

Привести получаемый объект к типу T0.

Обратите внимание, что успешность приведения типов во время выполнения зависит от семантики стирания типов Scala. Поэтому выражение 1.asInstanceOf[String] вызовет ClassCastException во время выполнения, а выражение List(1).asInstanceOf[List[String]] - нет. В последнем примере, поскольку аргумент типа стирается во время компиляции, невозможно проверить, соответствуют ли содержимое списка запрашиваемому типу.

returns

получаемый объект.

Определяющие классы
Any
Выбрасываемые исключения

ClassCastException если получаемый объект не является экземпляром стирания типа T0.

def asJava[T](f: Future[T]): CompletionStage[T]

Возвращает CompletionStage, который будет завершен тем же значением или исключением, что и заданный Scala Future, когда он завершится. Поскольку Future является представлением только для чтения, этот CompletionStage не поддерживает метод toCompletableFuture.

Семантика Scala Future требует, чтобы все обратные вызовы вызывались асинхронно по умолчанию, поэтому возвращаемый CompletionStage направляет все вызовы к синхронным преобразованиям к их асинхронным аналогам, т. е. thenRun внутри будет вызывать thenRunAsync.

f

Scala Future, который может в конечном итоге обеспечить завершение для возвращаемого CompletionStage

returns

CompletionStage, который выполняет все обратные вызовы асинхронно и не поддерживает интерфейс CompletableFuture

def asScala[T](cs: CompletionStage[T]): Future[T]

Возвращает Scala Future, который будет завершен тем же значением или исключением, что и заданный CompletionStage, когда он завершится. Преобразования возвращаемого Future выполняются асинхронно, как указано в ExecutionContext, который передается методам комбинатора.

cs

CompletionStage, который может в конечном итоге обеспечить завершение для возвращаемого Scala Future

returns

Scala Future, представляющий завершение CompletionStage

def clone(): AnyRef

Создать копию получаемого объекта.

Реализация метода clone по умолчанию зависит от платформы.

returns

копия получаемого объекта.

Атрибуты
protected[java.lang]
Определяющие классы
AnyRef
Аннотации
@throws(classOf[java.lang.CloneNotSupportedException]) @native()
Примечание

не указано в SLS как член AnyRef

final def eq(arg0: AnyRef): Boolean

Проверяет, является ли аргумент (that) ссылкой на получаемый объект (this).

Метод eq реализует отношение эквивалентности на ненулевых экземплярах AnyRef, и имеет три дополнительных свойства:

    Он согласован: для любых ненулевых экземпляров x и y типа AnyRef, множественные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false. Для любого ненулевого экземпляра x типа AnyRef, x.eq(null) и null.eq(x) возвращают false. null.eq(null) возвращает true.

При переопределении методов equals или hashCode, важно убедиться, что их поведение согласуется с равенством ссылок. Поэтому, если два объекта являются ссылками друг на друга (o1 eq o2), они должны быть равны друг другу (o1 == o2) и должны иметь одинаковое хеш-значение (o1.hashCode == o2.hashCode).

returns

true если аргумент является ссылкой на получаемый объект; false в противном случае.

Определяющие классы
AnyRef

def equals(arg0: AnyRef): Boolean

Метод равенства для ссылочных типов. Реализация по умолчанию делегирует вызов методу eq.

См. также equals в scala.Any.

returns

true , если объект-приемник эквивалентен аргументу; false в противном случае.

Definition Classes
AnyRef → Any

def finalize(): Unit

Вызывается сборщиком мусора для объекта-приемника, когда к объекту больше нет ссылок.

Подробности о том, когда и будет ли вызываться метод finalize, а также о взаимодействии с finalize и нелокальными возвратами и исключениями зависят от платформы.

Attributes
protected[java.lang]
Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.Throwable])
Note

не определен в SLS как член AnyRef

final def getClass(): Class[_ <: AnyRef]

Возвращает представление класса во время выполнения для объекта.

returns

объект класса, соответствующий типу времени выполнения приемника.

Definition Classes
AnyRef → Any
Annotations
@native()

def hashCode(): Int

Метод hashCode для ссылочных типов. См. hashCode в scala.Any.

returns

значение хэш-кода для этого объекта.

Definition Classes
AnyRef → Any
Annotations
@native()

final def isInstanceOf[T0]: Boolean

Проверяет, является ли динамический тип объекта-приемника типом T0.

Обратите внимание, что результат проверки зависит от правил стирания типов Scala. Поэтому выражение 1.isInstanceOf[String] вернёт false, а выражение List(1).isInstanceOf[List[String]] вернёт true. В последнем примере, из-за стирания аргумента типа во время компиляции, невозможно проверить, соответствуют ли элементы списка указанному типу.

returns

true , если объект-приемник является экземпляром стираемого типа T0; false в противном случае.

Definition Classes
Any

final def ne(arg0: AnyRef): Boolean

Эквивалентно !(this eq that).

returns

true , если аргумент не является ссылкой на объект-приемник; false в противном случае.

Definition Classes
AnyRef

final def notify(): Unit

Разбуживает один поток, ожидающий монитора объекта-приемника.

Definition Classes
AnyRef
Annotations
@native()
Note

не определен в SLS как член AnyRef

final def notifyAll(): Unit

Разбуживает все потоки, ожидающие монитора объекта-приемника.

Definition Classes
AnyRef
Annotations
@native()
Note

не определен в SLS как член AnyRef

final def synchronized[T0](arg0: => T0): T0

Definition Classes
AnyRef

def toString(): String

Создаёт строковое представление этого объекта. По умолчанию представление зависит от платформы. На платформе Java — это конкатенация имени класса, "@" и хэш-кода объекта в шестнадцатеричном формате.

returns

строковое представление объекта.

Definition Classes
AnyRef → Any

final def wait(): Unit

Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.InterruptedException])

final def wait(arg0: Long, arg1: Int): Unit

Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.InterruptedException])

final def wait(arg0: Long): Unit

Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.InterruptedException]) @native()

© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.13.0/scala/jdk/javaapi/FutureConverters$.html

Spec-Zone.ru

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