Junior — Middle
Wat zijn de beperkingen bij het gebruik van threads voor Dispatchers.Main binnen Coroutines?
sobes.tech AI
Antwoord van AI
Dispatchers.Main in Kotlin Coroutines is bedoeld om coroutines op de hoofd (UI) thread van Android te starten.
Beperkingen:
- Alleen op de hoofdthread uitvoeren — gebruik Dispatchers.Main niet voor achtergrond- of langdurige operaties, om de UI niet te blokkeren.
- Beschikbaarheid hangt af van het platform — op Android werkt Dispatchers.Main met de Looper van de hoofdthread, in andere omgevingen kan aanvullende configuratie nodig zijn.
- Niet geschikt voor CPU- of IO-intensieve taken — voor deze taken is het beter om Dispatchers.IO of Dispatchers.Default te gebruiken.
Voorbeeld van gebruik:
CoroutineScope(Dispatchers.Main).launch {
// UI bijwerken
textView.text = "Laden..."
val data = withContext(Dispatchers.IO) {
// Lange operatie
fetchData()
}
textView.text = data
}