[Thread] arrêter un thread
Bonjour à tous !
Je crée un serveur de socket.
J'ai donc un Thread qui "écoute" en quelques sorte le réseau à la recherche de nouveaux clients.
Lorsque je détecte un nouveau client, je crée un autre Thread chargé de dialoguer avec lui.
Voici le code (simplifié) de mon Thread d'écoute :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
public ServerThread(){
start();
}
public void run(){
try{
ServerSocket _ss = new ServerSocket(18000);
if (interrupted()){
System.out.println("FIN");
}
new ClientThread(_ss.accept());
}catch(Exception e){
}
} |
Je désire pouvoir arrêter ce thread. J'ai donc utililisé la méthode monThread.interrupt()
Le problème... Le thread bloque sur _ss.accept() puisqu'il attend de nouvelles connexions. Il ne vérifie donc jamais le bloc :
if (interrupted()){
}
Comment faire pour pouvoir arrêter ce Thread ?