Junior — Middle
Android mimarisi içinde viewModelScope'un çalışma prensibini açıklayın
sobes.tech yapay zeka
AI'dan gelen yanıt
viewModelScope — это CoroutineScope, связанный с жизненным циклом ViewModel в Android. Он позволяет запускать корутины, которые автоматически отменяются, когда ViewModel уничтожается, что предотвращает утечки памяти и выполнение ненужных задач после уничтожения UI-компонента.
Например, если вы загружаете данные из сети в ViewModel, используя viewModelScope.launch { ... }, то при уничтожении ViewModel все запущенные корутины будут отменены автоматически.
class MyViewModel : ViewModel() {
fun loadData() {
viewModelScope.launch {
val data = repository.getData()
// обновить UI через LiveData или StateFlow
}
}
}
Таким образом, viewModelScope упрощает управление асинхронными задачами и обеспечивает безопасность с точки зрения жизненного цикла.