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")
}
Create a free account and build your private vault. Share publicly whenever you want.