[cURL]Sprawdzanie szybkości pobierania pliku
Ostatnio zmodyfikowano 2013-09-24 12:50
maniek1310 Temat założony przez niniejszego użytkownika |
» 2013-09-15 17:58:34 Teraz znowu wyskakują jakieś dziwne liczby 4.16666e-290. oto kod int progressbar( void * clientp, double dltotal, double dlnow, double ultotal, double ulnow ) { clock_t czas2 = clock(); double roznica; if( czas ==( czas2 + 1 ) ) { roznica = dlnow - pobrano; roznica /= 1024; roznica /= 1024; } czas = clock(); pobrano = dlnow; int dltotalcalk =( dlnow * 100 ) / dltotal; dltotal /= 1024; dltotal /= 1024; dlnow /= 1024; dlnow /= 1024; std::ostringstream rozmiar( std::ostringstream::ate ); std::ostringstream sciagnieto( std::ostringstream::ate ); std::ostringstream ile_procent( std::ostringstream::ate ); std::ostringstream predkosc( std::ostringstream::ate ); if( dltotal != 0 and dlnow != 0 ) { rozmiar << dltotal; sciagnieto << dlnow; ile_procent << dltotalcalk; predkosc << roznica; rozmiar << " mb"; sciagnieto << " mb"; ile_procent << " %"; } else if( roznica == 0 ) { } else { rozmiar << "Rozpoczynanie"; sciagnieto << "Rozpoczynanie"; ile_procent << "0 %"; } SetWindowText( hStatic4, rozmiar.str().c_str() ); SetWindowText( hStatic6, sciagnieto.str().c_str() ); SetWindowText( hStatic8, predkosc.str().c_str() ); SetWindowText( hStatic9, ile_procent.str().c_str() ); SendMessage( hProgressBar, PBM_SETPOS,( WPARAM ) dltotalcalk, 0 ); return 0; } |
|
pekfos |
» 2013-09-15 18:07:24 Nie zawsze roznica ma prawidłową wartość i dalej nie dzielisz przez czas. |
|
maniek1310 Temat założony przez niniejszego użytkownika |
» 2013-09-15 18:15:46 Ale przecież przypisuje do zmiennych ile aktualnie pobrało i ile pobrało przy poprzednim wywołaniu funkcji, następnie odejmuje i sprawdzał ile pobrał w ciągu sekundy. |
|
pekfos |
» 2013-09-15 18:40:20 clock() nie zwraca czasu w sekundach. Jeśli warunek się nie spełni, wyświetlasz niezdefiniowaną wartość. |
|
DejaVu |
» 2013-09-24 12:50:53 double predkosc_w_KB =( calkowita_liczba_pobranych_bajtow /( aktualny_czas_w_sek - czas_rozpoczecia_pobierania_w_sek ) ) / 1024;
|
|
1 2 « 3 » |