Sobes.tech
Junior — Middle

Milline roll on viewModelScope'il korutinate elutsükli haldamisel ViewModeli sees?

sobes.tech AI

Vastus AI-lt

viewModelScope — see on CoroutineScope, mis on seotud Androidi ViewModel'i elutsükliga. See automaatselt tühistab kõik selles jooksvad korutinid, kui ViewModel hävitatakse, mis aitab vältida mälulekkeid ja tarbetuid ülesandeid.

Näiteks, kui alustate asünkroonset operatsiooni viewModelScope-is, siis see tühistatakse ViewModel'i hävitamisel, näiteks ekraani pööramisel või Activity sulgemisel.

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

See lihtsustab korutinide haldamist ja muudab koodi turvalisemaks ning puhtamaks.