Forum de la communauté SFML

Aide => Réseau => Discussion démarrée par: azfboom le Septembre 11, 2015, 05:46:50 pm

Titre: Bloqué sur la reception d'un paquet.
Posté par: azfboom le Septembre 11, 2015, 05:46:50 pm
Bonjour à tous,
Dans le but de créer facilement un client j'utilise sfml.
J'ai donc un code qui me connecte au serveur et qui doit recevoir un message en bytes.
Seulement au moment de recevoir le thread se bloque et je ne sais pas d'où cela provient :
void recpetion()//receptionner des données en bytes
{
char data[taille_max];
size_t received;
sf::Packet packet;

string message;
// socket TCP:

if (socket.receive(packet) != sf::Socket::Done){ //bloque ici
        printf("Fail\n");
}
else {
        if (packet >> message)
        {
                cout << "la\n";
                cout << message;
                // ok
        }
        else
        {
                // erreur, échec de lecture de la variable 'x' depuis le paquet
        }
}
 

Merci d'avance
Titre: Re : Bloqué sur la reception d'un paquet.
Posté par: Laurent le Septembre 11, 2015, 06:19:11 pm
Est-ce que le serveur utilise aussi SFML et la classe sf::Packet ?
Titre: Re : Bloqué sur la reception d'un paquet.
Posté par: azfboom le Septembre 11, 2015, 06:27:53 pm
Non c'est un serveur fait par mon prof qui nous a donné le .exe.
Ca viendrait de là ?
Titre: Re : Bloqué sur la reception d'un paquet.
Posté par: Laurent le Septembre 11, 2015, 08:28:54 pm
Oui, comme expliqué dans le tutoriel concernant sf::Packet.

sf::Packet possède son propre protocole et ne peut communiquer qu'avec d'autres sf::Packet (pour les sockets TCP tout du moins).
Titre: Re : Bloqué sur la reception d'un paquet.
Posté par: azfboom le Septembre 12, 2015, 03:37:50 pm
Ah mince j'ai pas du faire attention à cet partie.
Du coup est il possible d'utiliser un buffer ? Et si oui comment faire ?
Merci d'avance.
Titre: Re : Bloqué sur la reception d'un paquet.
Posté par: Laurent le Septembre 12, 2015, 04:28:57 pm
Il suffit de ne pas utiliser sf::Packet. Regarde les tutos et la doc si tu ne sais pas comment faire.
Titre: Re : Bloqué sur la reception d'un paquet.
Posté par: azfboom le Septembre 12, 2015, 04:42:17 pm
Ok merci pour l'aide apportée.