• [译]curl_multi_add_handle


    NAME
    curl_multi_add_handle - add an easy handle to a multi session
    添加easy handle到multi session中

    SYNOPSIS
    #include <curl/curl.h>
    CURLMcode curl_multi_add_handle(CURLM *multi_handle, CURL *easy_handle);


    DESCRIPTION
    Adds a standard easy handle to the multi stack. This function call will make this multi_handle control the specified easy_handle.
    添加一个标准的easy handle到Multi stack中。

    While an easy handle is added to a multi stack, you can not and you must not use curl_easy_perform on that handle. After having removed the easy handle from the multi stack again, it is perfectly fine to use it with the easy interface again.
    当一个easy handle被添加到multi stack中,你不能再对这个easy handle使用curl_esay_perform。
    当这个easy handle被从multi stack中移除,又可以再次对这个easy handle使用esay_curl接口了。

    If the easy handle is not set to use a shared (CURLOPT_SHARE) or global DNS cache (CURLOPT_DNS_USE_GLOBAL_CACHE), it will be made to use the DNS cache that is shared between all easy handles within the multi handle when curl_multi_add_handle is called.
    当调用curl_multi_add_handle时,如果easy handle没有设置使用shared (CURLOPT_SHARE),或者全局DNS缓存(CURLOPT_DNS_USE_GLOBAL_CACHE),
    则会使用multi handle中的share的dns缓存。
    ------------------------------------------------------------------------------------------------------------------------------

    When an easy interface is added to a multi handle, it will use a shared connection cache owned by the multi handle. Removing and adding new easy handles will not affect the pool of connections or the ability to do connection re-use.
    当一个新的easy handle被加入到multi handle中,他会使用一个multi handle缓存的shared连接。
    移除和添加easy handle不会影响连接池或者连接复用。

    If you have CURLMOPT_TIMERFUNCTION set in the multi handle (and you really should if you're working event-based with curl_multi_socket_action and friends), that callback will be called from within this function to ask for an updated timer so that your main event loop will get the activity on this handle to get started.
    如果multi handle设置了CURLMOPT_TIMERFUNCTION(如果你使用curl_multi_socket_action,应该设置),
    回调函数会被触发

    The easy handle will remain added to the multi handle until you remove it again with curl_multi_remove_handle - even when a transfer with that specific easy handle is completed.

    You should remove the easy handle from the multi stack before you terminate first the easy handle and then the multi handle:

    1 - curl_multi_remove_handle

    2 - curl_easy_cleanup

    3 - curl_multi_cleanup

    RETURN VALUE

    CURLMcode type, general libcurl multi interface error code.

  • 相关阅读:
    读Hadoop3.2源码,深入了解java调用HDFS的常用操作和HDFS原理
    AI学习笔记:人工智能与机器学习概述
    CDN百科 | 最近,你的APP崩了吗?
    CDN HTTPS安全加速基本概念、解决方案及优化实践
    CDN百科第六讲 | 怎样用CDN抵御攻击?看完这篇漫画你就懂了
    CDN百科第五讲 | CDN和游戏加速器有什么区别?
    CDN百科第四讲 | 如何优雅地在云上“摆摊”——做直播带货,你不得不关注的技术
    CDN百科第三讲 | 如果用了云服务器,还需要做CDN加速吗?
    阿里云杨敬宇:边缘计算行业通识与阿里云ENS的技术演进之路
    CDN百科 | 假如没有CDN,网络世界会变成什么样?
  • 原文地址:https://www.cnblogs.com/solohac/p/4311289.html
Copyright © 2020-2023  润新知