Junior — Middle
Jaka jest rola viewModelScope w zarządzaniu cyklem życia korutyn w ViewModel?
sobes.tech AI
Odpowiedź od AI
viewModelScope — to CoroutineScope powiązany z cyklem życia ViewModel w Android. Automatycznie anuluje wszystkie uruchomione w nim korutyny, gdy ViewModel jest niszczony, co zapobiega wyciekom pamięci i wykonywaniu niepotrzebnych zadań.
Na przykład, jeśli uruchomisz operację asynchroniczną w viewModelScope, zostanie ona anulowana przy niszczeniu ViewModel, na przykład podczas obracania ekranu lub zamknięcia Activity.
class MyViewModel : ViewModel() {
fun loadData() {
viewModelScope.launch {
val data = repository.getData()
// zaktualizuj UI
}
}
}
Ułatwia to zarządzanie korutynami i czyni kod bezpieczniejszym i czyściejszym.