Bonjour,
Je developpe actuellement une application réseau en UDP.
Pour l'envoie des données j'ai opter pour une structure contenant un int et un data:
1 2 3 4 5
| struct netData
{
int size;
void* Data;
}; |
jusque la tout va bien, le champ size contient la taille de 'Data', j'envoie donc ma structure par le reseau, et quand je la reçoit, je n'est donc aucune information de la taille de ma data par contre, je sais que j'ai un int puis une data de taille variable, j'aurais donc aimer pouvoir lire une première fois avec:
recvfrom(sockfd, &netData.size, sizeof(netData.size), 0, src_addr, addrlen)
pour récupérer la taille de ma data puis refaire un recvfrom pour remplir ma data hors mon deuxieme recvfrom bloque jusqu'a ce que je lui renvoye un nouveau datagram.
J'aurais donc voulu savoir si en appelant 2 fois d'affilée recvfrom, je suis obligée de recevoir 2 datagram ou bien je peut relire des informations de mon 1er datagram?
Merci et bonne soirée.
Partager