Downloadgeschwindigkeit messen
-
Servus,
ich hab hier mal ne rein mathematische Frage. Und zwar hab ich ein Download-Tool geproggt. Nun möchte ich die Downloadgeschwindigkeit anzeigen.
Die Download-Funktion liefert mir die bis dato erhaltene Byte-Grösse(RecievedBytes) und die maximale Grösse der Datei(Max).
Desweiteren habe ich eine Stopuhr(iCount) erstellt, die solange der Download läuft, bei 0 beginnt und im Sekundentakt hochzählt.
Die Formel zur Berechnung habe ich folgend aufgesetzt:int iCount = 0
iCount++
kbs = (RecievedBytes/1024) / iCount // RecievedBytes wird in kb umgerechnet
// und durch die abgelaufene Zeit
// dividiertNun bin ich mir nicht ganz sicher ob ich das korrekt mache und mir wirklich in jeder Sekunde die aktuelle Geschwindigkeit in KB/s geliefert wird.
Ich habe mir überlegt, dass ich dadurch eigentlich nur die durschnittliche Speed erhalte und eigentlich müsste die Formel folgend aussehen:
die in jeder neuen Sekunde heruntergeladenen bytes durch 1 sec.
Also so etwa:kbs = ((newBytes-Recievedbytes)/1024) / 1sec // newBytes sind die in jeder
// sekunde neu hinzugekommene
// bytesIch hoffe ich habe mich verständlich ausgedrückt und ihr mir sagen könnt was richtig ist oder auch einen total neuen Ansatz. Danke schon mal.
MFG
-
Merke dir einfach wie viel Byte du in Sec t-1 (z.B Sec.6) hast und ziehst das von den Bytes in Sec t (Sec.7) ab dann hast du deine Speed für die eine Secunde
-
In der FAQ steht dazu glaub ich schon was interessantes
Devil