Junior — Middle
Жобадагы корутиндердин иштөө мөөнөтүн кантип чектөөгө болот?
sobes.tech AI
AIден жооп
Kotlin'de 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 atiladi 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.