curl_easy_init(3)    libcurl 手册      curl_easy_init(3)

名字
  curl_easy_init - 开始一个简单的libcurl会话

梗概
  #include <curl/curl.h>

  CURL *curl_easy_init( );

描述
  此函数必须是调用的第一个函数,它返回一个curl类型的文件描述指针,你必须使用作为输入到其他功能之前使用。这个调用必须有一个相应的调用curl_easy_cleanup(3)当操作完成。
  如果你没有调用call的curl_global_init(3)函数, curl_easy_init(3)会自动帮你完成调用.这在多线程中会出现致命的问题,因为curl_global_init(3)不是线程安全的,它可能会因为没有相应的清理导致资源的问题。

  建议你不要通过调用而得到curl_global_init(3)体现。详细介绍了如何使用这个功能请看到libcurl的描述(3)全局环境的要求。
返回值
  如果这个函数的返回值为NULL,你将不能使用curl中的任何函数。

范例

 CURL *curl = curl_easy_init();
if(curl) {
CURLcode res;
curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
res = curl_easy_perform(curl);
curl_easy_cleanup(curl);
}

请参阅
curl_easy_cleanup(3), curl_global_init(3), curl_easy_reset(3), curl_easy_perform(3)

libcurl 7.8.1 4         March 2002        curl_easy_init(3)

 curl_easy_init()                                                 libcurl Manual                                                 curl_easy_init()

 NAME
curl_easy_init - Start a libcurl easy session SYNOPSIS
#include <curl/curl.h> CURL *curl_easy_init( ); DESCRIPTION
This function must be the first function to call, and it returns a CURL easy handle that you must use as input to other functions in the
easy interface. This call MUST have a corresponding call to curl_easy_cleanup() when the operation is complete. If you did not already call curl_global_init(), curl_easy_init() does it automatically. This may be lethal in multi-threaded cases,
since curl_global_init() is not thread-safe, and it may result in resource problems because there is no corresponding cleanup. You are strongly advised to not allow this automatic behaviour, by calling curl_global_init() yourself properly. See the description in
libcurl() of global environment requirements for details of how to use this function. RETURN VALUE
If this function returns NULL, something went wrong and you cannot use the other curl functions. EXAMPLE
CURL *curl = curl_easy_init();
if(curl) {
CURLcode res;
curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
res = curl_easy_perform(curl);
curl_easy_cleanup(curl);
} SEE ALSO
curl_easy_cleanup(), curl_global_init(), curl_easy_reset(), curl_easy_perform() libcurl 7.8. March curl_easy_init()

man curl_easy_init(原创)的更多相关文章

  1. 【原创分享·支付宝支付】HBuilder打包APP调用支付宝客户端支付

    前言 最近有点空余时间,所以,就研究了一下APP支付.前面很早就搞完APP的微信支付了,但是由于时间上和应用上的情况,支付宝一直没空去研究.然后等我空了的时候,发现支付宝居然升级了支付逻辑,虽然目前还 ...

  2. 【原创分享·微信支付】C# MVC 微信支付教程系列之现金红包

            微信支付教程系列之现金红包           最近最弄这个微信支付的功能,然后扫码.公众号支付,这些都做了,闲着无聊,就看了看微信支付的其他功能,发现还有一个叫“现金红包”的玩意,想 ...

  3. 【原创分享·微信支付】 C# MVC 微信支付教程系列之扫码支付

    微信支付教程系列之扫码支付                  今天,我们来一起探讨一下这个微信扫码支付.何为扫码支付呢?这里面,扫的码就是二维码了,就是我们经常扫一扫的那种二维码图片,例如,我们自己添 ...

  4. 【原创分享·微信支付】 C# MVC 微信支付教程系列之公众号支付

    微信支付教程系列之公众号支付         今天,我们接着讲微信支付的系列教程,前面,我们讲了这个微信红包和扫码支付.现在,我们讲讲这个公众号支付.公众号支付的应用环境常见的用户通过公众号,然后再通 ...

  5. 【原创分享·微信支付】C# MVC 微信支付之微信模板消息推送

    微信支付之微信模板消息推送                    今天我要跟大家分享的是“模板消息”的推送,这玩意呢,你说用途嘛,那还是真真的牛逼呐.原因在哪?就是因为它是依赖微信生存的呀,所以他能不 ...

  6. [原创]java使用JDBC向MySQL数据库批次插入10W条数据测试效率

    使用JDBC连接MySQL数据库进行数据插入的时候,特别是大批量数据连续插入(100000),如何提高效率呢?在JDBC编程接口中Statement 有两个方法特别值得注意:通过使用addBatch( ...

  7. GJM : C#设计模式汇总整理——导航 【原创】

    感谢您的阅读.喜欢的.有用的就请大哥大嫂们高抬贵手"推荐一下"吧!你的精神支持是博主强大的写作动力以及转载收藏动力.欢迎转载! 版权声明:本文原创发表于 [请点击连接前往] ,未经 ...

  8. 信息安全-5:RSA算法详解(已编程实现)[原创]

    转发注明出处:http://www.cnblogs.com/0zcl/p/6120389.html 背景介绍 1976年以前,所有的加密方法都是同一种模式: (1)甲方选择某一种加密规则,对信息进行加 ...

  9. Atitit.你这些项目不都是模板吗?不是原创  集成和整合的方式大总结

    Atitit.你这些项目不都是模板吗?不是原创  集成和整合的方式大总结 1.1. 乔布斯的名言:创新即整合(Creativity is just connecting things).1 1.2. ...

随机推荐

  1. variably modified 'dist' at file scope|

    转自:http://blog.csdn.net/wusuopubupt/article/details/18408227 错误原因: The reason for this warning is th ...

  2. 北京易信软科信息技术有限公司 问卷调查管理系统V2.0

    北京易信软科信息技术有限公司 问卷调查管理系统V2.0 支持题目模板配置.题型模板配置.选项模板配置,报表查询功能配置 按月建表功能 运用java开发.velocity技术实现页面加载功能,高性能,高 ...

  3. linux shell 常用表达式汇总

    1. linux shell 逻辑运算符.逻辑表达式详解: http://www.cnblogs.com/chengmo/archive/2010/10/01/1839942.html

  4. ReferenceError: $ is not defined (绝对路径和相对路径)

    今天使用JQuery时,进入js文件后一直达不到想要的效果,在firebug上调试后发现报错提示"ReferenceError: $ is not defined",显然,这是JQ ...

  5. 分拆素数和 HDU - 2098

    把一个偶数拆成两个不同素数的和,有几种拆法呢? Input输入包含一些正的偶数,其值不会超过10000,个数不会超过500,若遇0,则结束.Output对应每个偶数,输出其拆成不同素数的个数,每个结果 ...

  6. nf_conntrack被启用导致服务故障

    1.查看是否有 nf_conntrack 使用iptable -L -t nat  查看,注意!!!查看也会启用nf_conntrack,任何和nat有关的命令都会启用nf_contrack -L 查 ...

  7. java学习第18天(map集合)

    Map集合是将键映射到值的对象.一个映射不能包含重复的键:每个键最多只能映射到一个值. 存储的是键值对形式的元素,键唯一,值可以重复,有点类似于数据库中的主键加数据.主要功能有: A:添加功能 put ...

  8. redis集群同步迁移方法(二):通过redis-migrate-tool实现

    前篇介绍的redis replication方法,操作步骤多,而且容易出错.在git上看到一些开源工具也能实现同步迁移功能,而且步骤简单,比如redis-port,redis-migrate-tool ...

  9. Robotframework框架AndroidLibrary库安装

    1.Ruby官网(http://rubyinstaller.org/)下载系统对应安装包进行安装 2.Ruby官网(http://rubyinstaller.org/)下载对应DevKit,运行解压到 ...

  10. 过渡transitioin

    一,什么是过渡(transition)? 1,transition 允许 CSS 元素的属性值在一定的时间区间内平滑地过渡. 2,可以在不使用 Flash 动画或 JavaScript 的情况下,在元 ...