Provided by: libcurl4-doc_7.81.0-1ubuntu1.19_all bug

NAME

       curl_multi_remove_handle - remove an easy handle from a multi session

SYNOPSIS

       #include <curl/curl.h>

       CURLMcode curl_multi_remove_handle(CURLM *multi_handle, CURL *easy_handle);

DESCRIPTION

       Removes  a  given  easy_handle  from  the  multi_handle. This will make the specified easy
       handle be removed from this multi handle's control.

       When the easy handle has been removed from a multi stack, it is again perfectly  legal  to
       invoke curl_easy_perform(3) on this easy handle.

       Removing  an easy handle while being used is perfectly legal and will effectively halt the
       transfer in progress involving that easy handle. All other easy handles and transfers will
       remain unaffected.

       It  is  fine  to  remove  a handle at any time during a transfer, just not from within any
       libcurl callback function.

EXAMPLE

       /* when an easy handle has completed, remove it */
       msg = curl_multi_info_read(multi_handle, &queued);
       if(msg) {
         if(msg->msg == CURLMSG_DONE) {
           /* a transfer ended */
           fprintf(stderr, "Transfer completed\n");
           curl_multi_remove_handle(multi_handle, msg->easy_handle);
         }
       }

AVAILABILITY

       Added in 7.9.6

RETURN VALUE

       CURLMcode type, general libcurl multi interface error code.

SEE ALSO

       curl_multi_cleanup(3),curl_multi_init(3), curl_multi_add_handle(3)