Junior — Middle
Wie kann man in seinem Projekt eine Laufzeitbegrenzung für Koroutinen festlegen?
sobes.tech KI
Antwort von AI
Um die Ausführungszeit von Koroutinen in Kotlin zu begrenzen, kannst du die Funktionen withTimeout oder withTimeoutOrNull aus der Bibliothek kotlinx.coroutines verwenden. Sie ermöglichen es, eine maximale Ausführungszeit für einen Codeblock festzulegen, und wenn die Koroutine diese Zeit nicht beendet, wird eine TimeoutCancellationException ausgelöst oder null zurückgegeben.
Beispiel:
import kotlinx.coroutines.*
fun main() = runBlocking {
try {
withTimeout(1000L) { // Begrenzung auf 1000 Millisekunden
repeat(5) { i ->
println("Iteration $i")
delay(300L) // Arbeit simulieren
}
}
} catch (e: TimeoutCancellationException) {
println("Ausführungszeit abgelaufen")
}
}
Auf diese Weise kannst du die Dauer der Koroutinen kontrollieren und Blockierungen oder zu lange laufende Operationen vermeiden.