Sobes.tech
Junior — Middle

Tudja magyarázni, hogy mit értünk a 'Dispatchers' kifejezés alatt, és hogyan használják őket?

sobes.tech MI

Válasz az MI-től

A Kotlin Coroutines-ban a Dispatchers objektumok, amelyek meghatározzák, hogy melyik szálon vagy szálmedencében fusson a coroutine.

A fő dispatcher típusok:

  • Dispatchers.Main — az UI szálon való munkához (például Androidon).
  • Dispatchers.IO — bemenet/kimenet műveletekhez, például fájlolvasáshoz vagy hálózati kérésekhez.
  • Dispatchers.Default — CPU-intenzív feladatokhoz.
  • Dispatchers.Unconfined — a coroutine a jelenlegi szálon indul, de átállhat.

Használat:

GlobalScope.launch(Dispatchers.IO) {
    // IO szálmedencében fut
    val data = fetchData()
    withContext(Dispatchers.Main) {
        // UI frissítése
        updateUI(data)
    }
}

Így a Dispatchers hatékonyan segít a szálak kezelésében és nem blokkolja a UI-t.