Kotlin предлагает withTimeout
тайм-аут сопрограммы через указанное количество миллисекунд.
Есть ли вместо этого удобный способ тайм-аута сопрограммы в заданный момент времени? например, если бы я хотел отключить сопрограмму сегодня в полночь, что-то вроде следующего:
val midnightTonightMillis: Long = ...
// a bit clumsy and prone to bugs
withTimeout(midnightTonightMillis - System.currentTimeMillis()) {
...
}
// a better way? (with `Instant` or similar instead of `Long` of course)
timeoutAt(midnightTonightMillis) {
...
}