10 votes

Dans quel thread le viewmodel Android s'exécute-t-il ?

Je suis un débutant dans le domaine de la liaison de données Android. Dans l'architecture mvvm, lorsque nous écrivons du code dans le viewmodel, dans quel thread ces codes sont exécutés, dans le thread principal ou dans un thread séparé.

12voto

Rajnish suryavanshi Points 1791

Vous pouvez vérifier en utilisant Thread.currentThread() méthode

Dans la méthode onCreate de l'activité, mettez le journal.

Log.d(TAG, Thread.currentThread());

Dans le constructeur du Viewmodel, mettez un autre log.

Log.d(TAG, Thread.currentThread());

Vous verrez le même fil de discussion Id. Un autre exemple est lorsque vous essayez d'effectuer une opération de base de données ou de réseau dans le modèle de vue sans utiliser AsyncTask, Thread ou RxJava, il jette une exception qui ne peut pas effectuer l'opération sur MainThread.

J'espère que cela vous aidera

3voto

Brahem Mohamed Points 153

Viewmodel est une classe consciente du cycle de vie qui est associée à l'interface utilisateur. La réponse est donc Main UI Thread.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X