DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

CURLOPT_TIMEOUT_MS(3)




CURLOPT_TIMEOUT_MS(3)curl_easy_setopt optionCURLOPT_TIMEOUT_MS(3)


NAME

     CURLOPT_TIMEOUT_MS - set maximum time the request is allowed
     to take


SYNOPSIS

     #include <curl/curl.h>

     CURLcode curl_easy_setopt(CURL *handle,  CURLOPT_TIMEOUT_MS,
     long timeout);


DESCRIPTION

     Pass a long as parameter containing timeout  -  the  maximum
     time  in  milliseconds  that  you allow the libcurl transfer
     operation to take. Normally, name lookups can take a consid-
     erable  time  and  limiting  operations  to  less than a few
     minutes risk  aborting  perfectly  normal  operations.  This
     option  may  cause  libcurl  to  use  the  SIGALRM signal to
     timeout system calls.

     If  libcurl  is  built  to  use  the  standard  system  name
     resolver,  that portion of the transfer will still use full-
     second  resolution  for  timeouts  with  a  minimum  timeout
     allowed of one second.

     In unix-like systems, this might cause signals  to  be  used
     unless CURLOPT_NOSIGNAL(3) is set.

     If both  CURLOPT_TIMEOUT(3)  and  CURLOPT_TIMEOUT_MS(3)  are
     set, the value set last will be used.

     Since this puts a hard limit for how long time a request  is
     allowed  to  take,  it  has limited use in dynamic use cases
     with varying transfer times. You are then advised to explore
     CURLOPT_LOW_SPEED_LIMIT(3),   CURLOPT_LOW_SPEED_TIME(3)   or
     using  CURLOPT_PROGRESSFUNCTION(3)  to  implement  your  own
     timeout logic.


DEFAULT

     Default timeout is 0 (zero) which means it never  times  out
     during transfer.


PROTOCOLS

     All


EXAMPLE

     CURL *curl = curl_easy_init();
     if(curl) {
       curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");

       /* complete within 20000 milliseconds */
       curl_easy_setopt(curl, CURLOPT_TIMEOUT_MS, 20000L);

libcurl 7.58.0   Last change: February 03, 2016                 1

CURLOPT_TIMEOUT_MS(3)curl_easy_setopt optionCURLOPT_TIMEOUT_MS(3)

       curl_easy_perform(curl);
     }


AVAILABILITY

     Always


RETURN VALUE

     Returns CURLE_OK


SEE ALSO

     CURLOPT_TIMEOUT(3),               CURLOPT_CONNECTTIMEOUT(3),
     CURLOPT_LOW_SPEED_LIMIT(3),

libcurl 7.58.0   Last change: February 03, 2016                 2


Man(1) output converted with man2html