Commit d529f388 authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

curl_easy_perform: gradually increase the delay time

Instead of going 50,100,150 etc millisecond delay time when nothing has
been found to do or wait for, we now start lower and double each loop as
in 4,8,16,32 etc.

This lowers the minimum wait without sacrifizing the longer wait too
much with unnecessary CPU cycles burnt.

Bug: http://curl.haxx.se/mail/lib-2013-07/0103.html
Reported-by: Andreas Malzahn
parent e2e92486
Loading
Loading
Loading
Loading
+1 −3
Original line number Diff line number Diff line
@@ -539,9 +539,7 @@ CURLcode curl_easy_perform(CURL *easy)
        if(curlx_tvdiff(after, before) <= 10) {
          without_fds++;
          if(without_fds > 2) {
            int sleep_ms = without_fds * 50;
            if(sleep_ms > 1000)
              sleep_ms = 1000;
            int sleep_ms = without_fds < 10 ? (1 << (without_fds-1)): 1000;
            Curl_wait_ms(sleep_ms);
          }
        }