Socket non-bloquante

Supafresh Messages postés 40 Date d'inscription samedi 1 février 2014 Statut Membre Dernière intervention 7 août 2014 - 22 juin 2014 à 14:02
Supafresh Messages postés 40 Date d'inscription samedi 1 février 2014 Statut Membre Dernière intervention 7 août 2014 - 7 juil. 2014 à 15:42
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/100619-socket-non-bloquante

Supafresh Messages postés 40 Date d'inscription samedi 1 février 2014 Statut Membre Dernière intervention 7 août 2014 3
7 juil. 2014 à 15:42
De quel livre tu parle ? ( donne le lien si possible ). Je n'ai pas voulu surcharger le code pour ne pas faire fuir les débutants, mais si tu veux bien gérer les réceptions, je te conseil d'utiliser des threads ( c'est sale ) ou un signal handler qui sera appelé lorsqu'il recevra SIGIO. Ensuite, tu fais un poll() ou un select() sur ta socket pour vérifier si c'est bien elle qui a émis le signal. Pour la socket fermé, je te conseil d'envoyer des données en permanence au serveur et si le serveur ne reçoit plus rien, il envoi un chiffre au hasard au client qui devra renvoyer le même, si c'est fait alors le client est connecté sinon bah tu fais close() sur la socket en question. Cette technique n'est pas la plus propre mais elle fonctionne. J'espère t'avoir été utile.
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
7 juil. 2014 à 05:40
Hum c'est un peu le chapitre #1 du manuel sur les socket, ça aurait été bien d'avoir un peu plus de détails. Comme par exemple, comment se passe l'envoie d'un volume important de donnée, ou comment bien gérer la réception, le socket fermé etc ..
Rejoignez-nous