Объект scala.concurrent.duration.Duration
Компаньон класс Duration
объект Duration extends java.io.Serializable
- Источник
- Duration.scala
- Линейные супертипы
- java.io.Serializable, AnyRef, Any
Значения-члены
final def !=(arg0: Any): Boolean
Тестирование двух объектов на неравенство.
- возвращает
trueесли !(this == that), в противном случае false.
- Определяющие классы
- AnyRef → Any
final def ##(): Int
Эквивалентно x.hashCode, за исключением упакованных числовых типов и null. Для числовых типов возвращает хэш-значение, согласованное с равенством значений: если два экземпляра типа значения сравниваются как true, то ## вернёт одно и то же хэш-значение для каждого из них. Для null возвращает хэш-код, где null.hashCode вызывает NullPointerException.
- возвращает
хэш-значение, согласованное с ==
- Определяющие классы
- AnyRef → Any
final def ==(arg0: Any): Boolean
Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).
- возвращает
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Определяющие классы
- AnyRef → Any
val Inf: Infinite
Бесконечная продолжительность: больше любой другой (кроме Undefined) и не равна ничему другому, кроме себя. Это значение тесно связано с Double.PositiveInfinity, соответствуя его семантике в арифметических операциях.
val MinusInf: Infinite
Бесконечная продолжительность: меньше любой другой и не равна ничему другому, кроме себя. Это значение тесно связано с Double.NegativeInfinity, соответствуя его семантике в арифметических операциях.
val Undefined: Infinite
Значение Undefined тесно связано с Double.NaN:
-
это результат в противном случае некорректных операцийэто не равно самому себе (согласно
equals())оно сравнивается больше любой другой Duration, кроме себя (для которого compare возвращает 0)Особые семантика сравнения копирует семантику Double.NaN.
Используйте eq, когда проверяете ввод метода относительно этого значения.
val Zero: FiniteDuration
def apply(s: String): Duration
Разбор строки в Duration. Формат "<length><unit>", где пробелы допускаются перед, между и после частей. Бесконечности обозначаются "Inf", "PlusInf", "+Inf", "Duration.Inf" и "-Inf", "MinusInf" или "Duration.MinusInf". Undefined обозначается "Duration.Undefined".
- Исключения
NumberFormatExceptionесли формат не поддаётся разбору
def apply(length: Long, unit: String): FiniteDuration
Создание конечной продолжительности из заданной длины и единицы измерения времени, где последняя просматривается в списке строковых представлений. Допустимые варианты:
d, day, h, hour, min, minute, s, sec, second, ms, milli, millisecond, µs, micro, microsecond, ns, nano, nanosecond и их формы множественного числа (для каждой, кроме первой упомянутой формы каждой единицы, т.е. нет "ds", но "days").
def apply(length: Long, unit: TimeUnit): FiniteDuration
Создание конечной продолжительности из заданной длины и единицы измерения времени. Указанная единица сохраняется в вычислениях как можно дольше, чтобы её можно было извлечь позднее.
def apply(length: Double, unit: TimeUnit): Duration
Создание Duration из заданной длины и единицы. Обратите внимание, что точность наносекунд может быть потеряна, если
-
единица – NANOSECONDS, а длина имеет абсолютное значение больше
2^53
Бесконечные вводы (и NaN) преобразуются в Duration.Inf, Duration.MinusInf и Duration.Undefined соответственно.
- Исключения
IllegalArgumentExceptionесли длина была конечной, но результирующая продолжительность не может быть выражена как FiniteDuration
final def asInstanceOf[T0]: T0
Преобразовать объект-получатель в тип T0.
Обратите внимание, что успех приведения типа во время выполнения зависит от семантики стирания Scala. Поэтому выражение 1.asInstanceOf[String] вызовет исключение ClassCastException во время выполнения, в то время как выражение List(1).asInstanceOf[List[String]] не вызовет. В последнем примере, поскольку аргумент типа стирается во время компиляции, невозможно проверить, являются ли элементы списка требуемого типа.
- returns
объект-получатель.
- Definition Classes
- Any
- Исключения
ClassCastExceptionесли объект-получатель не является экземпляром стираемого типаT0.
def clone(): AnyRef
Создать копию объекта-получателя.
По умолчанию реализация метода clone зависит от платформы.
- returns
копия объекта-получателя.
def create(s: String): Duration
Распарсить строку в Duration. Формат "<length><unit>", где допускается пробелы перед, между и после частей. Бесконечности обозначаются "Inf", "PlusInf", "+Inf" и "-Inf" или "MinusInf".
- Исключения
NumberFormatExceptionесли формат не может быть распарсен
def create(length: Long, unit: String): FiniteDuration
Конструирует конечную продолжительность из заданной длины и единицы времени, которая ищется в списке строковых представлений. Допустимые варианты:
d, day, h, hour, min, minute, s, sec, second, ms, milli, millisecond, µs, micro, microsecond, ns, nano, nanosecond и их множественные формы (для всех, кроме первого указанного формата каждой единицы, т.е. нет "ds", но есть "days").
def create(length: Double, unit: TimeUnit): Duration
Конструировать Duration из заданной длины и единицы. Обратите внимание, что точность наносекунд может быть потеряна, если
-
единица NANOSECONDS, а длина имеет абсолютное значение больше, чем
2^53
Вводные бесконечности (и NaN) преобразуются в Duration.Inf, Duration.MinusInf и Duration.Undefined соответственно.
- Исключения
IllegalArgumentExceptionесли длина была конечной, но получившаяся продолжительность не может быть выражена как FiniteDuration
def create(length: Long, unit: TimeUnit): FiniteDuration
Конструировать конечную продолжительность из заданной длины и единицы времени. Принятая единица сохраняется на протяжении всех вычислений как можно дольше, чтобы ее можно было получить позже.
final def eq(arg0: AnyRef): Boolean
Проверяет, является ли аргумент (that) ссылкой на объект-получатель (this).
Метод eq реализует отношение эквивалентности на не-null экземплярах AnyRef, и имеет три дополнительных свойства:
-
Он согласован: для любых не-null экземпляров
x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false. Для любого не-null экземпляра 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в противном случае.
- Definition Classes
- AnyRef
def equals(arg0: AnyRef): Boolean
Метод равенства для ссылочных типов. По умолчанию делегирует eq.
См. также equals в scala.Any.
- returns
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Definition Classes
- AnyRef → Any
def finalize(): Unit
Вызывается сборщиком мусора для объекта-получателя, когда больше нет ссылок на объект.
Детали того, когда и если вызывается метод finalize, а также взаимодействие между finalize и нелокальными возвратами и исключениями, зависят от платформы.
def fromNanos(nanos: Long): FiniteDuration
Создать конечную длительность из заданного числа наносекунд. Результат будет иметь наименьший возможный временной интервал, который точно выражает эту длительность.
- Исключения
IllegalArgumentExceptionдляLong.MinValue, так как это приведет к несогласованному поведению в дальнейшем (не может быть отрицательным)
def fromNanos(nanos: Double): Duration
Создать, возможно, бесконечную или неопределённую длительность из заданного числа наносекунд.
Double.PositiveInfinity отображается на Duration.Inf
Double.NegativeInfinity отображается на Duration.MinusInf
Double.NaN отображается на Duration.Undefined
-0d отображается на Duration.Zero (точно так же, как 0d)Семантика получившихся объектов Duration соответствует семантике их двойниковых значений Double относительно арифметических операций.
- Исключения
IllegalArgumentException, если длина была конечной, но получившуюся длительность нельзя выразить как FiniteDuration
final def getClass(): Class[_ <: AnyRef]
Возвращает представление класса во время выполнения объекта.
- возвращает
объект класса, соответствующий типу получателя во время выполнения.
def hashCode(): Int
Метод hashCode для ссылочных типов. См. hashCode в scala.Any.
- возвращает
значение хэш-кода для этого объекта.
final def isInstanceOf[T0]: Boolean
Проверка, соответствует ли динамический тип объекта получателя типу T0.
Обратите внимание, что результат проверки зависит от стирания типов Scala. Таким образом, выражение 1.isInstanceOf[String] вернёт false, а выражение List(1).isInstanceOf[List[String]] вернёт true. В последнем примере, поскольку аргумент типа стирается во время компиляции, невозможно проверить, являются ли элементы списка указанного типа.
- возвращает
trueесли объект получателя является экземпляром стираемого типаT0;falseв противном случае.
- Определяющие классы
- Any
final def ne(arg0: AnyRef): Boolean
Эквивалентно !(this eq that).
- возвращает
trueесли аргумент не является ссылкой на объект получателя;falseв противном случае.
- Определяющие классы
- AnyRef
final def notify(): Unit
Разбудить один поток, ожидающий монитора объекта получателя.
- Определяющие классы
- AnyRef
- Аннотации
- @native()
- Примечание
не определено SLS как член AnyRef
final def notifyAll(): Unit
Разбудить все потоки, ожидающие монитора объекта получателя.
- Определяющие классы
- AnyRef
- Аннотации
- @native()
- Примечание
не определено SLS как член AnyRef
final def synchronized[T0](arg0: => T0): T0
- Определяющие классы
- AnyRef
val timeUnit: Map[String, TimeUnit]
- Атрибуты
- protected[scala.concurrent.duration]
val timeUnitName: Map[TimeUnit, String]
- Атрибуты
- protected[scala.concurrent.duration]
def toString(): String
Создаёт строковое представление этого объекта. По умолчанию представление зависит от платформы. На платформе Java это конкатенация имени класса, символа "@" и хэш-кода объекта в шестнадцатеричном формате.
- returns
строковое представление объекта.
- Definition Classes
- AnyRef → Any
def unapply(d: Duration): Option[(Long, TimeUnit)]
def unapply(s: String): Option[(Long, TimeUnit)]
Извлекает длительность и единицу измерения времени из строки, где формат должен соответствовать описанию для apply(String). Экстрактор не будет соответствовать некорректным строкам или не конечным продолжительностям.
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
implicit object DurationIsOrdered extends Ordering[Duration]
© 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/concurrent/duration/Duration$.html