Vider une socket

Signaler
Messages postés
18
Date d'inscription
lundi 18 février 2008
Statut
Membre
Dernière intervention
24 juillet 2008
-
Messages postés
149
Date d'inscription
jeudi 22 avril 2004
Statut
Membre
Dernière intervention
10 décembre 2009
-
Bonjour,

Je travaille sur un projet de serveur et client UDP. J'utilise les sockets de windows avec les fonctions recvfrom et sendto entre autres.

Du coté reception, mon programme recupere des données à intervalle régulier.
Etant donné que la reception et l'emission ne sont pas synchronisé, il arrive un moment ou le buffer coté reception sature ou se vide...
Dans le cas où il sature, je voudrais savoir s'il existe un moyen de vider ma socket afin de reprendre le cours normal de mon programme... Quelqu'un sait-il si mon probleme peut etre résolu?

Merci d'avance

1 réponse

Messages postés
149
Date d'inscription
jeudi 22 avril 2004
Statut
Membre
Dernière intervention
10 décembre 2009

Salut

Vider le buffer tu veux dire ?

En cas de saturation tu dois avoir un compte rendu d'échec de ta fonction d'écriture et/ou de lecture
Récupère l'erreur avec :
erreur = WSAGetLastError ();

puis gère le code retourné
ex:
WSAEMSGSIZE,  INVALID_SOCKET, WSAEWOULDBLOCK etc.

ainsi qu'un compteur d'erreurs pour éventuellement quitter la boucle de réception/émission.

A+