Google


       curl_multi_perform - reads/writes available data from each
       easy handle


SYNOPSIS

       #include <curl/curl.h>

       CURLMcode  curl_multi_perform(CURLM   *multi_handle,   int
       *running_handles);


DESCRIPTION

       When  the  app  thinks  there's  data  available  for  the
       multi_handle, it should call this function  to  read/write
       whatever   there   is   to   read   or  write  right  now.
       curl_multi_perform() returns as soon as  the  reads/writes
       are  done. This function does not require that there actu-
       ally is any data available for reading or that data can be
       written,  it can be called just in case. It will write the
       number of handles that still transfer data in  the  second
       argument's integer-pointer.


RETURN VALUE

       CURLMcode  type,  general  libcurl  multi  interface error
       code.

       If  you  receive  CURLM_CALL_MULTI_PERFORM,  this  basicly
       means  that  you  should  call  curl_multi_perform  again,
       before you select() on more actions. You don't have to  do
       it immediately, but the return code means that libcurl may
       have more data available to return or that  there  may  be
       more data to send off before it is "satisfied".

       NOTE that this only returns errors etc regarding the whole
       multi stack. There might still have occurred  problems  on
       invidual transfers even when this function returns OK.


TYPICAL USAGE

       Most  application  will  use  curl_multi_fdset  to get the
       multi_handle's  file  descriptors,  then  it'll  wait  for
       action  on  them using select() and as soon as one or more
       of them are ready, curl_multi_perform gets called.


SEE ALSO

       curl_multi_cleanup(3),curl_multi_init(3)










Man(1) output converted with man2html