Witam. Chciałbym wiedzieć jak obliczyć szybkość pobierania w webclient. Kombinowałem ale mi nic z tego nie wychodzi :( Proszę o jakiś przykładowy kod źródłowy jak to zrobić. Z góry dziex :)
Wiesz, nic nie robiłem w webclient, ale zazwyczaj szybkość pobierania oblicza się z pseudowzoru:
ilość pobranych danych w kilku jednostkach czasu / ilość jednostek czasu = ilość pobranych danych na jednostkę czasu
czyli
200 kb / 10 s = 20kb/s
czyli jeśli w 10 sekund pobrało 200 kb, to dzielimy 200 / 10 = 20 kb/s
W tym wypadku, to chyba najbardziej miarodajny będzie wzór: ilość pobranych dotychczas danych / dotychczasowy czas pobierania.
Czasami właśnie wzór liczący kilka sekund/minut wstecz jest bardziej miarodajny - na przykład jeśli przez 10 minut coś się pobiera z prędkością 200 kb/s, a później przez minutę z prędkością 1 kb/s to twój wzór da całkiem niezły wynik (około 190, nie chce mi się liczyć), a tak naprawdę pobieranie prawie stoi...
somekind napisał(a)
W tym wypadku, to chyba najbardziej miarodajny będzie wzór: ilość pobranych dotychczas danych / dotychczasowy czas pobierania.
Nie zgodze się, bo to będzie średnia prędkość pobierania a nie chwilowa. Najlepiej co pół sekundy sprawdzać ile danych przybyło i liczyć na tej podstawie. Mniej więcej tak jest to zrobione np. w Firefoksie
No w sumie racja... Ten mój byłby chyba lepszy do szacowania pozostałego czasu.
Zresztą, zawsze można zrobić oba. :d