Sobes.tech
Junior — Middle

Jaká je role a použití CoroutineExceptionHandler při správě chyb uvnitř korutin?

sobes.tech AI

Odpověď od AI

CoroutineExceptionHandler je rozhraní v Kotlin Coroutines, které umožňuje centralizovaně zpracovávat nedořešené výjimky, ke kterým dojde v korutinách.

Role a použití:

  • Umožňuje definovat logiku zpracování chyb, které nebyly zachyceny uvnitř samotné korutiny.
  • Používá se pro globální zpracování výjimek, například pro logování nebo upozornění uživatele.
  • Přidává se do kontextu korutiny při jejím spuštění.

Příklad použití:

val handler = CoroutineExceptionHandler { _, exception ->
    println("Chyba zachycena: $exception")
}

GlobalScope.launch(handler) {
    throw RuntimeException("Chyba v korutině")
}

V tomto příkladu bude výjimka vyvolaná v korutině zachycena a zpracována v CoroutineExceptionHandler, čímž se zabrání pádu aplikace.