虽然它的文件说这个功能必须,但是我看到了两个例子,一个有它,另一个没有。
http://curl.haxx.se/libcurl/c/persistant.html
http://curl.haxx.se/libcurl/c/multi-app.html
这个功能是否必要?
答案 0 :(得分:15)
如果设计它将是必要的。 documentation说:
在程序调用libcurl中的任何其他函数之前,必须在程序中至少调用一次该函数(程序是共享内存空间的所有代码)。它设置的环境对于程序的生命周期是恒定的,并且对于每个程序都是相同的,因此多个调用与一个调用具有相同的效果。
但请注意curl_easy_init的文档:
如果您还没有调用curl_global_init(3),curl_easy_init(3)会自动执行此操作。这在多线程情况下可能是致命的,因为curl_global_init(3)不是线程安全的,并且可能导致资源问题,因为没有相应的清理。