When the message does not fit into the send buffer of the socket, send normally blocks, unless the socket has been
placed in non-blocking I/O mode.
A priori, rien ne dit que le message entier est supposé être délivré même si sa longeur est inférieure à la limite imposée localement. J'ai rencontré ce cas à plusieurs reprise et j'ai interprété la valeur de retour (si est elle strictement supérieure à 0) comme étant l'offset de départ pour le prochain send :
The calls return the number of characters sent, or -1 if an error occurred.
Cela afin d'envoyer le message complètement. Je crois qu'il s'agit d'une approche assez classique (?).
# Man pages
Posté par xfred31 . En réponse au message Appel systeme send (). Évalué à 1.
Extrait de la man-page (Linux) :
When the message does not fit into the send buffer of the socket, send normally blocks, unless the socket has been
placed in non-blocking I/O mode.
A priori, rien ne dit que le message entier est supposé être délivré même si sa longeur est inférieure à la limite imposée localement. J'ai rencontré ce cas à plusieurs reprise et j'ai interprété la valeur de retour (si est elle strictement supérieure à 0) comme étant l'offset de départ pour le prochain send :
The calls return the number of characters sent, or -1 if an error occurred.
Cela afin d'envoyer le message complètement. Je crois qu'il s'agit d'une approche assez classique (?).