Je n'ai pas regardé attentivement ton code par manque de temps :oops:
Mais je dirais qu'il ne bloque pas. Il fait ce que tu lui demandes, c'est à dire lire des lignes en boucle depuis un flux. Donc il lit toutes les lignes et lorsque tout est lu il lit la ligne suivante, c'est à dire celle qui va arriver (si elle arrive un jour ;) ); Donc ton client n'est pas bloqué mais en attente.
Pour obtenir ce que tu veux, tu dois tester la présence de quelque chose à lire dans le flux avant de lire.
Par exemple:
while(req!=null && in.available() != 0)
{
req=in.readLine();
lpseudo.setModel(dlm);
dlm.addElement(req);
lpseudo=new JList(dlm);
}
Je n'ai pas regardé attentivement ton code par manque de temps :oops:
Mais je dirais qu'il ne bloque pas. Il fait ce que tu lui demandes, c'est à dire lire des lignes en boucle depuis un flux. Donc il lit toutes les lignes et lorsque tout est lu il lit la ligne suivante, c'est à dire celle qui va arriver (si elle arrive un jour ;) ); Donc ton client n'est pas bloqué mais en attente.
Pour obtenir ce que tu veux, tu dois tester la présence de quelque chose à lire dans le flux avant de lire.
Par exemple: