Sobes.tech
Junior — Middle

Wat is de taakbeheerder die wordt gebruikt in ViewModelScope bij het werken met coroutines?

sobes.tech AI

Antwoord van AI

De Dispatcher in ViewModelScope regelt op welk thread of threadpool coroutines worden uitgevoerd. In Android is dit belangrijk om werk te scheiden tussen de hoofdthread (UI) en achtergrondthreads.

Bijvoorbeeld, Dispatchers.Main wordt gebruikt voor het bijwerken van de UI, en Dispatchers.IO voor invoer-/uitvoerbewerkingen.

ViewModelScope annuleert automatisch de coroutines bij het vernietigen van de ViewModel, waardoor geheugenlekken worden voorkomen.

Voorbeeld van gebruik:

viewModelScope.launch(Dispatchers.IO) {
    val data = repository.loadData() // Achtergrondoperatie
    withContext(Dispatchers.Main) {
        _liveData.value = data // UI-update
    }
}