j'ai lancé un thread et je veux savoir son status dés qu'il termine.
Je n'arrive pas avec la méthode isAlive() .
Merci pour avoir accepté de m'aider.
Version imprimable
j'ai lancé un thread et je veux savoir son status dés qu'il termine.
Je n'arrive pas avec la méthode isAlive() .
Merci pour avoir accepté de m'aider.
Si j'ai bien compris la question, il faut que tu ais une variable que ton Thread remplira selon son status.
Par exemple :
Plus d'explications dans les tutoriels pour apprendre Java : http://java.developpez.com/cours/Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 public class MaClasse { private int status = 0; public MaClasse() { new Thread(new Runnable() { run() { try { .......... status = 1; // Si traitement ok } catch (Exception e) { status = 0; // Si erreur de traitement } } }).start(); }
monThread.join(), ça attend la fin...
Merci pour vos reponses mais ma question est la suivante:
Je dois savoir lorsque le thread finira sa tache pour pourvoir changer son status dans une interface de monitoring.
cad je dois savoir si la valeur de retour exactement succes ou failure.
Merci une autre fois.
Il faut que tu poses le problème autrement !
Il est plus simple que le thread indique à ton interface de monitoring quel est son statut plutôt que de détecter la fin du thread pour rapatrier son statut.
Quels sont les etats qu'il peut avoir un thread donné?
Merci
Et bien, tu mets un "listener" dessus (que tu te crées), et à la fin de ta méthode run(), tu signales aux écouteurs (ton interface de monitoring) que le thread est terminé.Citation:
Envoyé par snipper
(regarde dans ma signature, dans les articles il y a "créer ses propres listeners en java")