Junior — Middle
Korutinalarla işləyərkən ViewModelScope-də istifadə olunan tapşırıq meneceri nədir?
sobes.tech Süni İntellekt
AI-dan cavab
ViewModelScope-də Dispatcher korutinlərin hansı thread və ya thread hovuzunda icra olunacağını idarə edir. Android-də bu, əsas thread (UI) və fon threadləri arasında işi bölmək üçün vacibdir.
Məsələn, Dispatchers.Main UI-ni yeniləmək üçün istifadə olunur, Dispatchers.IO isə giriş-çıxış əməliyyatları üçün.
ViewModelScope, ViewModel məhv edildikdə avtomatik olaraq korutinləri ləğv edir və yaddaş sızıntılarının qarşısını alır.
İstifadə nümunəsi:
viewModelScope.launch(Dispatchers.IO) {
val data = repository.loadData() // fon əməliyyatı
withContext(Dispatchers.Main) {
_liveData.value = data // UI yeniləməsi
}
}