gpt4 book ai didi

c++ - Multi CURL C++ 在准备就绪时不断提供新的处理程序

转载 作者:行者123 更新时间:2023-11-28 07:22:10 24 4
gpt4 key购买 nike

我在 C++ 中使用 CURL Multi API。

目前,我将分配给它的处理程序的数量限制在 5 个,因此我必须等到它们全部完成后才能提供另外 5 个处理程序。

我希望能够检测到处理程序何时完成,处理数据,然后生成下一个处理程序以放入新空间。

是否可以在 Multi API 运行时将处理程序传递给它?

最佳答案

Is it possible to pass handlers to the Multi API whilst it is running?

是的。

一旦 curl_multi_info_read 返回带有 CURLMSG_DONE 标志的消息,您就可以:

  1. 通过msg->easy_handle获取对应的easy handle
  2. 检查传输是否正常,然后根据响应执行您想要的操作,
  3. 使用 curl_multi_remove_handle 删除这个简单的句柄

然后您可以使用 curl_multi_add_handle 将另一个句柄添加到您的多句柄。

大多数时候 best way to proceed是在简单的 handle 上执行 curl_easy_reset,然后再次添加它:

  curl_multi_remove_handle(multi_handle, easy_handle);
curl_easy_reset(easy_handle);
// here re-configure your handle for the next transfer (CURLOPT_URL, etc)
// ...
curl_multi_add_handle(multi_handle, easy_handle);

关于c++ - Multi CURL C++ 在准备就绪时不断提供新的处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19259983/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com