socket : pb read/write - C++ - Programmation
Marsh Posté le 24-08-2002 à 10:38:26
La solution serait d'envoyer des messages de taille fixe, et de découper ensuite le contenu du buffer de réception en conséquence.
Ou sinon, mettre en place un système de messages d'acquitement : le serveur atteindra le message d'acquitement du client avant d'envoyer le message suivant.
Marsh Posté le 23-08-2002 à 16:47:55
Bonjour,
Côté serveur TCP, je fais
for(i=0;i<10;i++){
write(socket,buffer_émission,...);
}
(le write est non bloquant)
Côté client TCP, je fais
while(1){
read(socket,buffer_reception,...);
}
(le read est non bloquant)
Les socket ont l'option TCP_NODELAY
Lorsque je reçois les buffers_reception côté client , j'en reçois 2 au lieu de 10
Le premier buffer_reception contient 1 seul buffer_emission
Le second buffer_reception contient 9 buffer_emission
Je devrais normalement recevoir
10 buffer_reception contenant 1 buffer_emission
Que puis-faire ?