Sobes.tech
Junior — Middle

Mik a korutinokban a Dispatchers.Main szálak használatának korlátai?

sobes.tech MI

Válasz az MI-től

A Dispatchers.Main a Kotlin Coroutines-ben az Android fő (UI) szálán történő coroutine indítására szolgál.

Korlátozások:

  • Csak a fő szálon futtassa — ne használja a Dispatchers.Main-t háttér- vagy hosszú műveletekhez, hogy ne blokkolja a UI-t.
  • Elérhetőség platformfüggő — Androidon a Dispatchers.Main a fő szál Looper-ét használja, más környezetekben további konfiguráció lehet szükséges.
  • Nem alkalmas CPU- vagy IO-intenzív feladatokra — ezekhez inkább a Dispatchers.IO vagy Dispatchers.Default használata ajánlott.

Használati példa:

CoroutineScope(Dispatchers.Main).launch {
    // UI frissítése
    textView.text = "Betöltés..."
    val data = withContext(Dispatchers.IO) {
        // Hosszú művelet
        fetchData()
    }
    textView.text = data
}