Je peux créer une classe qui étend Thread et remplace la méthode run par une boucle. Je le lance ensuite avec myThread.start(), qui crée le thread OS et exécute mon run(). Tout va bien.Android Détails du fil
Cependant, je ne comprends pas très bien les détails. Je vais essayer de le faire en utilisant le code de test lorsque j'en aurai l'occasion, mais avant cela quelqu'un peut-il répondre à ces questions:
Q1. Quand le constructeur est-il exécuté, vraisemblablement quand myThread est déclaré, ou sur start()?
Q2. Que se passe-t-il lorsque mon code run() est terminé? Existe-t-il un moyen de l'exécuter à nouveau dans le même thread (c'est-à-dire de ne pas perdre toutes les valeurs de variable de thread définies dans la classe) Appeler start() pourrait créer un nouveau thread os?
Q3. On peut supposer que d'appeler myThread.run() exécuterait mon run() dans le cadre de l'activité en cours, pas MyThread, auquel cas comment pourrait-il accéder aux variables de thread?)
-Frink
Pensez à utiliser l'implémentation de l'interface 'Runnable' sur votre propre classe plutôt que d'étendre la classe' Thread'. Cela aide généralement à comprendre ce qui se passe où. – ob1