Junior — Middle
Kokia yra viewModelScope vaidmuo valdant korutinų gyvavimo ciklą ViewModel viduje?
sobes.tech AI
Atsakymas iš AI
viewModelScope — tai CoroutineScope, susijęs su Android ViewModel gyvavimo ciklu. Jis automatiškai atšaukia visas jame vykdomas korutinas, kai ViewModel yra sunaikinamas, tai padeda išvengti atminties nutekėjimo ir nereikalingų užduočių.
Pavyzdžiui, jei pradėsite asinchroninę operaciją viewModelScope, ji bus atšaukta, kai ViewModel bus sunaikintas, pvz., ekrano pasukimo ar Activity uždarymo metu.
class MyViewModel : ViewModel() {
fun loadData() {
viewModelScope.launch {
val data = repository.getData()
// atnaujinti UI
}
}
}
Tai supaprastina korutinų valdymą ir daro kodą saugesnį bei švaresnį.