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 han-
       dle in some places in the documentation.	This init  call	 MUST  have  a
       corresponding  call to curl_multi_cleanup(3) when the operation is com-
       plete.

       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				  2025-06-03		    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+14.3.quarterly>

home | help