Sobes.tech
Junior — Middle

O que é o gestor de tarefas usado no ViewModelScope ao trabalhar com corrotinas?

sobes.tech IA

Resposta da IA

O Dispatcher no ViewModelScope controla em qual thread ou pool de threads as coroutines são executadas. No Android, isto é importante para dividir o trabalho entre a thread principal (UI) e threads de background.

Por exemplo, Dispatchers.Main é usado para atualizar a UI, e Dispatchers.IO para operações de entrada/saída.

O ViewModelScope cancela automaticamente as coroutines ao destruir o ViewModel, evitando vazamentos de memória.

Exemplo de uso:

viewModelScope.launch(Dispatchers.IO) {
    val data = repository.loadData() // Operação de background
    withContext(Dispatchers.Main) {
        _liveData.value = data // Atualização da UI
    }
}