Junior — Middle
Coroutine'lerle çalışırken ViewModelScope'da kullanılan görev yöneticisi nedir?
sobes.tech yapay zeka
AI'dan gelen yanıt
ViewModelScope içindeki Dispatcher, korutinlerin hangi thread veya thread havuzunda çalıştırılacağını kontrol eder. Android'de bu, ana thread (UI) ile arka plan threadleri arasında işi ayırmak için önemlidir.
Örneğin, Dispatchers.Main UI'yi güncellemek için kullanılırken, Dispatchers.IO giriş/çıkış işlemleri için kullanılır.
ViewModelScope, ViewModel yok edildiğinde otomatik olarak korutinleri iptal eder ve böylece bellek sızıntılarını önler.
Kullanım örneği:
viewModelScope.launch(Dispatchers.IO) {
val data = repository.loadData() // Arka plan işlemi
withContext(Dispatchers.Main) {
_liveData.value = data // UI güncellemesi
}
}