20. oktober 2004 - 14:57Der er
8 kommentarer og 1 løsning
Maksimum hastighed på recv
Hej Eksperter!
Jeg har eksperimenteret med winsock i noget tid nu, og har kastet mig ud i at kode en download klient via http protokollen. Programmet virker fint, men jeg vil gerne finde den mest optimale måde at implementere en hastighedsbegrænsning, når der hentes med recv().
Hvis en meget lav hastighed specificeres (fx 0,5 kb/s) ønsker jeg stadig at programmet henter med denne konstante hastighed, så muligheden med at udnytte Sleep() er udelukket.
På forhånd tak og håber jeg har gjort mig forståelig, /Vandborg
Efter videre eftertanke kan det egentlig godt være Sleep() stadigvæk kan udnyttes. Overvejer at lave en dynamisk buffer afhængig af maks. hastighedens størrelse, og derefter udnytte Sleep(). Ved bare ikke om dette er en optimal måde at gøre det på.
Jo, det kunne godt tænkes at virke. Men bliver bufferens størrelse ikke nødt til at være noget ala maks. båndbredden, for ikke at hente for meget af gangen?
og i denne forbindelse, hvis man nu antager jeg vælger en latterligt lille buffer på f.eks. 50 bytes for at opnå størst præcision ... Vil dette ikke ligeledes spilde båndbrede, da TCP protokollen altid sender en mini pakke for at tjekke om den egentlige pakke blev modtaget? (Er måske på et vildspor her)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.