curl Api用法
1: 初始化
Init中初始化curl_handle:
For(i=0: handle_count)
curl_easy_init
curl_multi_init
2: 发送出数据:
1) 选择一个空闲的easy curl_handle(用CurlHandleQueue维护所有curlhandle、freehandle、busyhandle);
2) 设置curl_handle选项:设置curl选项、发送内容、cookie;
3) 添加一个curl handle到multi stack:curl_multi_add_handle
3:Process
1) curl_multi_perform
curl_multi_perform
2) select监听到事件时,调用curl_multi_perform通知curl执行相应的操作:curl_multi_fdset , select (curl_multi_perform)
3) 获取执行结果:curl_multi_info_read
4) curl_multi_remove_handle
2: Tick中处理超时的curl_handle:
调用curl_multi_remove_handle
curl命令行用法
1.post数据
curl -d "param1=value1¶m2=value2" "http://hostname"