加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – MultiThreaded Libcurl

发布时间:2020-12-16 10:19:50 所属栏目:百科 来源:网络整理
导读:我需要使用Libcurl执行并行HTTP请求. 据我所知,我需要为每个线程创建一个新句柄 并将CURLOPT_WRITEDATA与某种线程本地存储一起使用. 多接口是否使这项任务更容易? 我也在使用cookies,使用CURLOPT_COOKIEFILE和CURLOPT_COOKIEJAR会使用 Libcurl为每个线程加
我需要使用Libcurl执行并行HTTP请求.

据我所知,我需要为每个线程创建一个新句柄
并将CURLOPT_WRITEDATA与某种线程本地存储一起使用.
多接口是否使这项任务更容易?

我也在使用cookies,使用CURLOPT_COOKIEFILE和CURLOPT_COOKIEJAR会使用
Libcurl为每个线程加载cookie文件?

解决方法

您可能知道,libcurl不是线程安全的,因此您应该确保libcurl句柄永远不会在多个线程之间共享.每个线程都需要存储本地数据(其中包括连接句柄).

由此可见,对于每个句柄,即对于每个线程,libcurl将需要从头开始读取cookie文件,因为该信息不能被共享.在我看来,这不是问题,虽然在更新时可能会出现问题(您将有多个线程尝试它).

关于多接口,它允许您复用多个传输,因此它是另一种方法,您可以在单个线程中尝试执行此操作.

更新2013年3月

libcurl现在是线程安全的.

libcurl is free,thread-safe,IPv6 compatible,feature rich,well supported,fast,thoroughly documented and is already used by many known,big and successful companies and numerous applications.”

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读