Junior — Middle
Loyihangizda korutinalar uchun bajarilish vaqtini cheklashni qanday o'rnatish mumkin?
sobes.tech AI
AIdan javob
Kotlin'da koroutinlarning bajarilish vaqtini cheklash uchun kotlinx.coroutines kutubxonasidan withTimeout yoki withTimeoutOrNull funksiyalaridan foydalanishingiz mumkin. Bu funksiyalar kod blokining maksimal bajarilish vaqtini belgilashga imkon beradi, va agar koroutine bu vaqt ichida tugamasa, TimeoutCancellationException istisnasi chiqariladi yoki null qaytariladi.
Misol:
import kotlinx.coroutines.*
fun main() = runBlocking {
try {
withTimeout(1000L) { // 1000 millisekund cheklov
repeat(5) { i ->
println("Takrorlash $i")
delay(300L) // ishni simulyatsiya qilish
}
}
} catch (e: TimeoutCancellationException) {
println("Vaqt tugadi")
}
}
Shu tarzda, koroutinlarning davomiyligini nazorat qilish va blokirovkalarni yoki juda uzoq davom etadigan operatsiyalarni oldini olish mumkin.