Sobes.tech
Junior — Middle

Πώς να ξεκινήσετε την εκτέλεση μιας coroutine μέσα σε ένα ViewModel;

sobes.tech AI

Απάντηση από AI

Στο Android, για να ξεκινήσετε μια coroutine στο ViewModel, συνήθως χρησιμοποιείτε το viewModelScope, το οποίο ακυρώνει αυτόματα τις coroutines κατά την καταστροφή του ViewModel.

Παράδειγμα εκκίνησης μιας coroutine:

class MyViewModel : ViewModel() {
    fun loadData() {
        viewModelScope.launch {
            // Εδώ μπορείτε να εκτελέσετε ασύγχρονες λειτουργίες
            val data = repository.getData()
            // Ενημερώστε το LiveData ή την κατάσταση
        }
    }
}

Το viewModelScope είναι ένα CoroutineScope που σχετίζεται με τον κύκλο ζωής του ViewModel, βοηθώντας στην αποφυγή διαρροών μνήμης και λανθασμένης συμπεριφοράς κατά την καταστροφή του συστατικού.