IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Conversation entre poukill et kaiser92

1 Messages visiteurs

  1. kaiser92
    Bonjour,
    j'ai detecter un pb dans votre tuto asio, enfin c'est mon avis.
    Dans la rubrique client/serveur synchrone, le serveur envoie les donnes via socket.send(boost::asio::buffer(msg)); De suite apres le socket dans la stack est delete ce qui ferme le socket. Le client lit les donnees en attendant.Le send retourne lorsqu'il a finit d envoyer les data, qui arrivent dans la carte reseau du client. Le client peut recevoir un EOF avant d avoir fini sa boucle de lecture. Vous dites dans le commentaire que eof correspond a la fin de reception des donnees, mais il correspond a une fermeture du socket en realite. Si le serveur envoie une tres grande chaine de caract., le send retourne alors que le client est en train de lire les packets decortiques buffurises dans la carte reseau, et peut recevoir le eof pendant sa boucle de lecture.Je doute que le read_some envoie un message au serveur et demande de lire, il lit simplement ce qu'il a dans son buffer d'apres mois.
    Merci de m'eclairer
Visualiser les messages visiteur de 1 à 1 sur 1