Объявления уровня пакета
API для измерения временных интервалов и вычисления длительности.
Дополнительные сведения см. в нашем руководстве Измерение времени.
Типы
Требования к платформе и версии: Common (1.3)
abstract classAbstractDoubleTimeSource(val unit: DurationUnit) : TimeSource.WithComparableMarks
Абстрактный класс, используемый для реализации источников времени, возвращающих показания в виде значений Double в указанной единице измерения.
Требования к платформе и версии: Common (1.9)
abstract class AbstractLongTimeSource(val unit: DurationUnit) : TimeSource.WithComparableMarks
Абстрактный класс, используемый для реализации источников времени, возвращающих показания в виде значений Long в указанной единице измерения.
Требования к платформе и версии: Common (1.9)
interface ComparableTimeMark : TimeMark, Comparable<ComparableTimeMark>
TimeMark, разницу между которым и другими отметками времени, полученными от того же источника времени TimeSource.WithComparableMarks, можно сравнить.
Требования к платформе и версии: Common (1.6)
value class Duration : Comparable<Duration>
Представляет промежуток времени между двумя моментами времени.
Требования к платформе и версии: Common (1.0), JS (1.6), JVM (1.6), Native (1.6), Wasm-JS (1.8), Wasm-WASI (1.8)
expect enum DurationUnit : Enum<DurationUnit>
Список возможных единиц измерения времени, в которых можно выразить длительность.
Требования к платформе и версии: Common (1.3)
annotation class ExperimentalTime@Target(allowedTargets = [AnnotationTarget.CLASS,AnnotationTarget.ANNOTATION_CLASS, AnnotationTarget.PROPERTY, AnnotationTarget.FIELD, AnnotationTarget.LOCAL_VARIABLE, AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.CONSTRUCTOR, AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.PROPERTY_SETTER, AnnotationTarget.TYPEALIAS ] )
Эта аннотация отмечает экспериментальную предварительную версию API стандартной библиотеки для измерения времени и работы с длительностями.
Требования к платформе и версии: Common (2.3)
class Instant : Comparable<Instant> , Serializable
Момент времени.
Требования к платформе и версии: Common (1.9)
class TestTimeSource : AbstractLongTimeSource
Источник времени с программно обновляемыми показаниями. Он полезен в тестах как предсказуемый источник времени.
Требования к платформе и версии: Common (1.9)
data class TimedValue<T>(val value: T, val duration: Duration)
Класс данных, представляющий результат выполнения действия вместе с длительностью прошедшего временного интервала.
Требования к платформе и версии: Common (1.9)
interface TimeMark
Представляет отметку времени на конкретном источнике времени TimeSource. Остаётся привязанной к источнику времени, от которого она была получена, и позволяет запрашивать длительность времени, прошедшего с этой отметки (см. функцию elapsedNow).
Требования к платформе и версии: Common (1.9)
interface TimeSource
Источник времени для измерения временных интервалов.
Свойства
Требования к платформе и версии: Common (2.3)
val Instant.isDistantFuture: Boolean
Возвращает true, если момент времени равен Instant.DISTANT_FUTURE или находится позже него.
Требования к платформе и версии: Common (2.3)
val Instant.isDistantPast: Boolean
Возвращает true, если момент времени равен Instant.DISTANT_PAST или находится раньше него.
Функции
Требования к платформе и версии: Common (2.3)
fun TimeSource.asClock(origin: Instant): Clock
Создаёт Clock, который использует отметку времени на момент создания, чтобы определить, насколько текущий момент отстоит от начала отсчёта.
Требования к платформе и версии: Common (1.9)
inline fun measureTime(block: () -> Unit): Duration
Выполняет заданный блок и возвращает длительность прошедшего временного интервала.
Требования к платформе и версии: Common (1.9)
inline fun TimeSource.measureTime(block: () -> Unit): Duration
inline fun TimeSource.Monotonic.measureTime(block: () -> Unit): Duration
Выполняет заданный блок и возвращает длительность прошедшего временного интервала.
Требования к платформе и версии: Common (1.9)
inline fun <T> measureTimedValue(block: () -> T): TimedValue<T>
Выполняет заданный блок и возвращает экземпляр класса TimedValue, содержащий как результат выполнения функции, так и длительность прошедшего временного интервала.
Требования к платформе и версии: Common (1.9)
inline fun <T> TimeSource.measureTimedValue(block: () -> T): TimedValue<T>
inline fun <T> TimeSource.Monotonic.measureTimedValue(block: () -> T): TimedValue<T>
Выполняет заданный блок и возвращает экземпляр класса TimedValue, содержащий результат выполнения функции и длительность прошедшего временного интервала.
Требования к платформе и версии: Common (1.6)
fun Double.toDuration(unit: DurationUnit): Duration
Возвращает Duration, равную этому числу типа Double указанных единиц измерения.
fun Int.toDuration(unit: DurationUnit): Duration
Возвращает Duration, равную этому числу типа Int указанных единиц измерения.
fun Long.toDuration(unit: DurationUnit): Duration
Возвращает Duration, равную этому числу типа Long указанных единиц измерения.
Требования к платформе и версии: JVM (1.8)
fun TimeUnit.toDurationUnit(): DurationUnit
Преобразует это значение перечисления java.util.concurrent.TimeUnit в соответствующее значение kotlin.time.DurationUnit.
Требования к платформе и версии: JVM (1.6)
inline fun Duration.toJavaDuration(): Duration
Преобразует значение kotlin.time.Duration в значение java.time.Duration.
Требования к платформе и версии: JVM (2.3)
fun Instant.toJavaInstant(): Instant
Преобразует это значение kotlin.time.Instant в значение java.time.Instant.
Требования к платформе и версии: JVM (1.6)
inline fun Duration.toKotlinDuration(): Duration
Преобразует значение java.time.Duration в значение kotlin.time.Duration.
Требования к платформе и версии: JS (2.3)
fun Date.toKotlinInstant(): Instant
Требования к платформе и версии: JVM (2.3)
fun Instant.toKotlinInstant(): Instant
Преобразует это значение java.time.Instant в значение kotlin.time.Instant.
Требования к платформе и версии: JVM (1.8)
fun DurationUnit.toTimeUnit(): TimeUnit
Преобразует это значение перечисления kotlin.time.DurationUnit в соответствующее значение java.util.concurrent.TimeUnit.
© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/