printwriter et socket detecter deconnection - Java - Programmation
Marsh Posté le 27-05-2005 à 10:47:28
j'ai trouve ca en cherchant sur le net :
Vous pouvez utiliser la méthode isReachable(int timeout) de la classe InnetAdress qui indique si l'adresse est accessible. Les implémentation de cette méthode utilisent en général ICMP. En cas de problèmes d'accès ICMP, la méthode tente une connexion TCP sur le port 7 (echo).
merci developpez.com
le truc c'est que ca me donne l'etat de la connection mais pas l'etat de la socket.
donc si vous avez des idees.
merci d'avance
A+
Marsh Posté le 27-05-2005 à 14:49:21
Solution pour detecter la rupture de la socket a l'envoi ne pas passer par printwriter ou autre stream, mais directement en recuperant le OutputStream de la Socket et envoyer les donnees en byte.
Code :
|
A+
Marsh Posté le 19-06-2008 à 10:09:31
bon j'ai travaillé sur ces problèmes.
pour la solution qui je trouvé et ca marche bien celle de faire un thread d'emission(avec boucle infinie) qui envoie n'importe qoi et de l'autre coté un autre threa reception
dans le bloc catch vous étes bien sur un état de déconnexion puisque l'inputstrem et l'outputstream non reconnu.
Marsh Posté le 26-05-2005 à 17:00:52
Bonjour,
Je suis entrain de travailler sur une application qui utilise des sockets TCP.
D'un cote j'ai un client qui fait des envois de messages et donc le serveur lui s'occupe de les recevoir.
Le probleme est que lorsque je debranche le cable reseau l'application cliente continue d'envoyer des messages. je teste donc socket.isConnected(), socket.isClose(), socket.isBound ... mais leur etat ne change pas je ne peux donc pas savoir que le cable n'est plus connectee. De plus je n'est pas d'exception quand je fait : socket.getOutputStream().
Ma question est donc comment savoir que l'envoi ne peut pas etre realise et que le cable n'est plus branche.
voila le code ou je realise l'envoi des messages :
Merci d'avance pour votre aide.
Message édité par kenumdrum le 27-05-2005 à 09:58:07