Problème Thread wait / Notify
Bonjour à tous,
j'ai un petit problème de wait sur un Thread qui même après un appel de la méthode notify ne se débloque pas...
voici le code de la casse Thread:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
public class USBThread extends Thread{
...
public static USBThread getInstance(){
if( instance == null ) { instance = new USBThread(); }
return instance;
}
public void run(){
.......
while(fin != 1){
synchronized(this){
try{
this.wait();
log.debug("Traitement du message");
process();
}catch(Exception e){}
}
} |
et voici la classe qui utilise ce thread.
En fait je crée un objkect USBThread, je récupère sa référence, je modifie un de ses objet et je notifie le thread pour qu'il puisse processer mon objet envoyé:
Code:
1 2 3 4 5 6 7
|
USBThread usb = USBThread.getInstance();
synchronized(usb){
usb.sendCommand(commande);
usb.notify();
} |
lorsque cette classe appelle la méthode notify de mon threadUSB, je n'ai pas d'affichage de la chaine "Traitement du message", ni de lancement de la méthode process().
Quelqu'un pourrait m'éclairer à ce sujet ? je bloque....
Merci !
Tiamat.