Коллеги, подскажите, почему я получаю ок, а не tim...
# russian
s
Коллеги, подскажите, почему я получаю ок, а не timeout?
Copy code
runBlocking {
        val timeoutResult = async {
            withTimeoutOrNull(2000) {
                sleep(15000)
                "ok"
            }
        }.await() ?: "timeout"

        println(timeoutResult)
    }
e
sleep
блокирует поток нужно вместо него использовать
dalay
s
Да, с delay работает, но я раньше считал, что withTimeoutOrNull должен работать в любом случае убивая поток. Вопрос - есть ли возможность сделать аналог withTimeoutOrNull который будет убивать заблокированный поток?
e
убить поток просто так нельзя
почти ничем 🙂
соответственно если есть блокирующий код, то корутина выполняемая на этом потоке все равно заблокируется
s
Ok, спасибо!