Bonjour,
Je suis entrain d'utiliser epoll dans une application client/serveur multiclients sur connexions tcp.
Je l'utilise en mode "classique" cad en mode level triggered..
J'aimerais savoir pourquoi, parfois, epoll m'indique un descripteur de socket prêt en lecture (EPOLLIN) alors que lorsque je fait un read sur le descripteur juste après, il n'y a rien a lire : read revoie donc 0...
Ceci se produit lorsque je détruis brutalement mon client avec un signal 15.
Je précise qu'a cet instant le client a déja ecrit sur la socket de son coté...
Pourquoi le read renvoie il 0 alors que epoll indique que le descripteur est prêt en lecture, normalement ne devrait on pas avoir des données a lire?
Je précise pour info que j'utilise la boucle locale pour les tests.
Partager