J'ai une application client-serveur, multi clients avec des threads, chaque client qui se connecte je l'ajoute à une liste, mais j'ai besoin de le supprimer une fois il se déconnecte, je n'arrive pas à implémenter un listener qui détecte le statut du client.

Code du Serveur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
List<Participant> participants = new ArrayList<>();
try {
                srv = new ServerSocket(Integer.valueOf(txtPort.getText()));
                while (true) {
 
 
                    //serveur accepte la connexion d'un participant
                    Participant Ui = new Participant(nonce, srv.accept(), "Connecté...");
 
 
                    //ajouter le participant venu à la liste et rafraichir le tableau
                    participants.add(Ui);
 
 
                    //lancement du thread du nouveau participant 
                    Thread thread = new Thread(Ui);
                    thread.start();
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
Un autre soucis, si on veux identifier un client, suggérez vous l'adresse ip comme identifiant ou existe on utiliser autre information ?

Merci