// Created on savesnippets.com ยท https://savesnippets.com/RieTUahZvoewGd import kotlin.time.Duration.Companion.seconds import kotlin.time.Duration.Companion.milliseconds import kotlin.time.Duration.Companion.minutes import kotlin.time.measureTime import kotlin.time.measureTimedValue fun main() { // Construct durations from any number val timeout = 30.seconds val pulseInterval = 250.milliseconds val sessionMax = 30.minutes println("$timeout, $pulseInterval, $sessionMax") // Arithmetic val total = 5.minutes + 30.seconds println(total.inWholeSeconds) // 330 println(total.inWholeMilliseconds) // 330000 // Benchmark a block val took = measureTime { Thread.sleep(150) } println("took $took") // took 150.123ms // Measure + capture result in one shot val (result, elapsed) = measureTimedValue { (1L..1_000_000L).sum() } println("$result in $elapsed") }