Bonsoir,
J'obtiens l' erreur : Address already in use en tentant de faire un bind() avec une nouvelle socket
Quelqu'un pourrait m'expliquer pourquoi ?
PS : la socket utilisée précédemment à été fermée close() et deliée unlink()
merci d'avance![]()
Bonsoir,
J'obtiens l' erreur : Address already in use en tentant de faire un bind() avec une nouvelle socket
Quelqu'un pourrait m'expliquer pourquoi ?
PS : la socket utilisée précédemment à été fermée close() et deliée unlink()
merci d'avance![]()
est ce que tu n'utiliserais pas un port standard deja ouvert ?
J'utilise le port 5000
Ce qui est bizarre, c'est que je me connecte une premiere fois normalement sans erreurs.
Est ce qu'il y aurait autre chose à faire pour casser le lien entre la socket et le port ?
euh ...
Voilà ce que j'essaie de faire :
un processus server tourne en boucle avec while()
un socket est créé et lié au port 5000 pour écouter les connections sur ce même port
un client se connecte au port 5000 et envoi un message texte via le socket,
le server affiche le message reçu et renvoi une reponse que le client reçoit et affiche lui aussi.
le server et le client ferme ensuite leur socket chacun de leur côté.
Jusqu'ici tout va bien
le server delie ensuite le socket du port avec unlink()
A ce nivau ci , je ne sais pas si la liaison a bien été cassée ...
le programme retourne au début de la boucle,
un nouveau socket est créé (puisque le précédent à été fermé)
ce nouveau socket est lié avec bind() et c'est à ce moment que je reçoit l'erreur : ADDRESS ALREADY IN USE
Il existe accept qui je pense me permet d'ouvrir plusieurs connection en fonction des demandes affluantes ... (je dois encore me renseigner sur le sujet)
Partager