|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Nov 2002
Messaggi: 845
|
Socket : Send TCP 1Mb.Come distinguere i dati?
Salve
ho 1Mb da mandare in TCP in blocchi da 1300byte lo mando tramite una send. while ... { send (blocco i-esimo da 1300byte) } ... ... send (3byte di stop) Alla fine, devo mandare un pacchetto da 3byte che mi indica la fine di quel Mbyte (il prossimo Mbyte deve essere trattato in modo diverso dalla destinazione). Il fatto è che il destinatario riceve blocchi da 1448byte, e il mittente "accorpa tutto"...anke la send di 3byte viene accorpata nell'ultima send (che non sara' da 1300 ma un po' meno).Domanda Come faccio a dire al mittente che la send di 3byte deve essere mandata a se?? Cioe' non deve essere accorpata in eventuali dati in coda? |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Nov 2002
Messaggi: 845
|
inserendo tra il while e la send di 3byte una sleep(1)
funziona...ma la sleep è poco elegante, cioe' funziona, ma magari non mi garantisce robustezza al 100% idee? |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Perchè non immetti la dimensione dell'intero pacchetto come primo dato inviato dalla send ?
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Nov 2002
Messaggi: 845
|
SONO UN CRETINO!!!
Hai prefettamente ragione!! Gli dico "we destinatario, vedi che ti sto mandando 1Mb preciso preciso" quello appera arriva 1Mb + 3byte si seleziona il Mbyte e i tre byte me li filtra... ![]() |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Inoltre i 3 byte di chiusura in fondo non servono più...
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:36.