Sobes.tech
Junior — Middle

Qual è il ruolo di viewModelScope nella gestione del ciclo di vita delle coroutine all'interno del ViewModel?

sobes.tech AI

Risposta dell'AI

viewModelScope — è un CoroutineScope associato al ciclo di vita del ViewModel in Android. Annulla automaticamente tutte le coroutine in esecuzione quando il ViewModel viene distrutto, prevenendo perdite di memoria e compiti inutili.

Ad esempio, se avvii un'operazione asincrona in viewModelScope, questa verrà annullata quando il ViewModel viene distrutto, ad esempio durante la rotazione dello schermo o la chiusura dell'Activity.

class MyViewModel : ViewModel() {
    fun loadData() {
        viewModelScope.launch {
            val data = repository.getData()
            // aggiornare UI
        }
    }
}

Questo semplifica la gestione delle coroutine e rende il codice più sicuro e pulito.