Sobes.tech
Junior — Middle

Projenizdeki koroutinler için çalışma süresi sınırı nasıl belirlenir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Kotlin'de koroutinlerin çalışma süresini sınırlamak için kotlinx.coroutines kütüphanesinden withTimeout veya withTimeoutOrNull fonksiyonlarını kullanabilirsiniz. Bu fonksiyonlar, kod bloğunun maksimum çalışma süresini belirlemenize olanak tanır ve eğer koroutine bu süre içinde tamamlanmazsa, sırasıyla TimeoutCancellationException istisnası fırlatılır veya null döner.

Örnek:

import kotlinx.coroutines.*

fun main() = runBlocking {
    try {
        withTimeout(1000L) { // 1000 milisaniye sınır
            repeat(5) { i ->
                println("Döngü $i")
                delay(300L) // çalışma simülasyonu
            }
        }
    } catch (e: TimeoutCancellationException) {
        println("Çalışma süresi doldu")
    }
}

Bu şekilde, koroutinlerin süresini kontrol edebilir ve takılmaları veya çok uzun süren işlemleri önleyebilirsiniz.