Пакет kotlin.time
API для представления значений Duration и экспериментальный API для измерения промежутков времени.
Типы
AbstractDoubleTimeSource
Абстрактный класс, используемый для реализации источников времени, которые возвращают свои показания как значения Double в указанной единице измерения.
abstract class AbstractDoubleTimeSource : WithComparableMarks
AbstractLongTimeSource
Абстрактный класс, используемый для реализации источников времени, которые возвращают свои показания как значения Long в указанной единице измерения.
abstract class AbstractLongTimeSource : WithComparableMarks
ComparableTimeMark
TimeMark, которую можно сравнивать на разницу с другими отметками времени, полученными от того же источника времени TimeSource.WithComparableMarks.
interface ComparableTimeMark : TimeMark, Comparable<ComparableTimeMark>
Duration
Представляет количество времени между одним моментом времени и другим.
class Duration : Comparable<Duration>
DurationUnit
Список возможных единиц измерения времени, в которых может быть выражено время.
enum class DurationUnit
TestTimeSource
Источник времени с программно изменяемыми показаниями. Полезен как предсказуемый источник времени в тестах.
class TestTimeSource : AbstractLongTimeSource
TimedValue
Класс данных, представляющий результат выполнения действия вместе с длительностью интервала времени.
data class TimedValue<T>
TimeMark
Представляет точку времени, отмеченную в определённом TimeSource. Связан с источником времени, из которого был получен, и позволяет запросить длительность прошедшего времени с этой точки (см. функцию elapsedNow).
interface TimeMark
TimeSource
Источник времени для измерения интервалов времени.
interface TimeSource
Аннотации
ExperimentalTime
Эта аннотация отмечает экспериментальный предварительный просмотр API стандартной библиотеки для измерения времени и работы с продолжительностями.
annotation class ExperimentalTime
Расширения для внешних классов
java.time.Duration
java.util.concurrent.TimeUnit
Свойства
дни
часов
микросекунд
миллисекунд
минут
наносекунд
секунд
Функции
measureTime
Выполняет заданную функцию block и возвращает длительность интервала прошедшего времени.
fun measureTime(block: () -> Unit): Duration
fun TimeSource.measureTime(block: () -> Unit): Duration
fun Monotonic.measureTime(block: () -> Unit): Duration
measureTimedValue
Выполняет заданную функцию block и возвращает экземпляр класса TimedValue, содержащий результат выполнения функции и длительность интервала прошедшего времени.
fun <T> measureTimedValue(block: () -> T): TimedValue<T>
Выполняет заданный block и возвращает экземпляр класса TimedValue, содержащий результат выполнения функции и длительность интервала прошедшего времени.
fun <T> TimeSource.measureTimedValue( block: () -> T ): TimedValue<T>
fun <T> Monotonic.measureTimedValue( block: () -> T ): TimedValue<T>
times
Возвращает длительность, значение которой равно значению указанной duration, умноженному на это число.
operator fun Int.times(duration: Duration): Duration
operator fun Double.times(duration: Duration): Duration
toDuration
Возвращает Duration, равный этому числу Int в указанных единицах.
fun Int.toDuration(unit: DurationUnit): Duration
toJavaDuration
Преобразует значение kotlin.time.Duration в значение java.time.Duration.
fun Duration.toJavaDuration(): Duration
toTimeUnit
Преобразует значение перечисления kotlin.time.DurationUnit в соответствующее значение java.util.concurrent.TimeUnit.
fun DurationUnit.toTimeUnit(): TimeUnit
© 2010–2023 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.time/index.html