Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
curl_multi_init(3)	    Library Functions Manual	      curl_multi_init(3)

NAME
     curl_multi_init - create a multi handle

SYNOPSIS
     #include <curl/curl.h>

     CURLM *curl_multi_init();

DESCRIPTION
     This  function  returns  a pointer to a CURLM handle to be used as input to
     all the other multi-functions, sometimes referred to as a multi  handle  in
     some  places in the documentation. This init call MUST have a corresponding
     call to curl_multi_cleanup(3) when the operation is complete.

     By default, several caches are stored in and held by the multi handle:  DNS
     cache, connection pool, TLS session ID cache and the TLS CA cert cache. All
     transfers using the same multi handle share these caches.

PROTOCOLS
     This functionality affects all supported protocols

EXAMPLE
     int main(void)
     {
       /* init a multi stack */
       CURLM *multi = curl_multi_init();
       CURL *curl = curl_easy_init();
       CURL *curl2 = curl_easy_init();

       /* add individual transfers */
       curl_multi_add_handle(multi, curl);
       curl_multi_add_handle(multi, curl2);
     }

AVAILABILITY
     Added in curl 7.9.6

RETURN VALUE
     If  this function returns NULL, something went wrong and you cannot use the
     other curl functions.

SEE ALSO
     curl_easy_init(3),      curl_global_init(3),      curl_multi_add_handle(3),
     curl_multi_cleanup(3), curl_multi_get_handles(3)

libcurl 			   2026-06-11		      curl_multi_init(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=curl_multi_init&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help