withTimeout/withTimeoutOrNull отменяют блок по времени; бросают TimeoutCancellationException (подтип CancellationException).
Разбор
- withTimeoutOrNull → null вместо throw.
- Отмена кооперативна.
- Не путать с OkHttp call timeout — настраивайте оба уровня.
- В finally освобождайте ресурсы.
Итог
Timeout — часть structured cancellation, не отдельный поток-killer.