Junior — Middle
Wat is de rol en toepassing van CoroutineExceptionHandler bij het beheren van fouten binnen coroutines?
sobes.tech AI
Antwoord van AI
CoroutineExceptionHandler is een interface in Kotlin Coroutines die het mogelijk maakt om onhandige uitzonderingen die in coroutines optreden centraal af te handelen.
Rol en toepassing:
- Maakt het mogelijk om de logica voor het afhandelen van fouten te definiëren die niet binnen de coroutine zelf zijn opgevangen.
- Wordt gebruikt voor globale foutafhandeling, bijvoorbeeld voor logging of gebruikersnotificaties.
- Wordt toegevoegd aan de context van de coroutine bij het starten.
Voorbeeld van gebruik:
val handler = CoroutineExceptionHandler { _, exception ->
println("Opgevangen uitzondering: $exception")
}
GlobalScope.launch(handler) {
throw RuntimeException("Fout in coroutine")
}
In dit voorbeeld wordt de in de coroutine gegenereerde uitzondering opgevangen en afgehandeld door CoroutineExceptionHandler, waardoor de crash van de applicatie wordt voorkomen.