inWholeMicroseconds
The value of this duration expressed as a Long number of microseconds.
The part of this duration that is smaller than a microsecond becomes a fractional part of the result and then is truncated (rounded towards zero).
If the result doesn't fit in the range of Long type, it is coerced into that range:
Long.MIN_VALUE is returned if it's less than
Long.MIN_VALUE,Long.MAX_VALUE is returned if it's greater than
Long.MAX_VALUE.
An infinite duration value is converted either to Long.MAX_VALUE or Long.MIN_VALUE depending on its sign.
Since Kotlin
1.6Samples
import kotlin.test.*
import kotlin.time.*
import kotlin.time.Duration.Companion.days
import kotlin.time.Duration.Companion.hours
import kotlin.time.Duration.Companion.microseconds
import kotlin.time.Duration.Companion.milliseconds
import kotlin.time.Duration.Companion.minutes
import kotlin.time.Duration.Companion.nanoseconds
import kotlin.time.Duration.Companion.seconds
fun main() {
//sampleStart
println(25_900.nanoseconds.inWholeMicroseconds) // 25
println("1_000_000_000.days.inWholeMicroseconds == Long.MAX_VALUE is ${1_000_000_000.days.inWholeMicroseconds == Long.MAX_VALUE}") // true
println("(-Duration.INFINITE).inWholeMicroseconds == Long.MIN_VALUE is ${(-Duration.INFINITE).inWholeMicroseconds == Long.MIN_VALUE}") // true
//sampleEnd
}