请教各位高手一个关于CRUL的问题!紧急!
我在LINUX下 用curl库写一个下载MP3的程序,用的是curl_easy_setopt,curl_easy_perform系列函数,但是只能实现下载MP3的时候阻塞等待在那里,请问有什么办法能让我实现异步下载MP3或者能随时中止下载么?多谢!!
[解决办法]
当然用curl_multi_xxx系列函数
curl_multi_fdset返回值可以用于select
程序可以在每次select前或者后执行一些需要的动作
在select阻塞直到超时或者时间到来前,程序是不能做事的
要所有时间都能边“下”边做事并能随时取消,有两个办法,
1. 搞成多线程,每个线程“下”一个东西
2. select超时时间设置很短,看起来没有阻塞一样
[解决办法]
可以尝试使用Curl的DEBUG选项,可以针对每个步骤注册回调函数。
具体的选项要看下手册了。