摘要:
前不久在使用libcurl写多线程下载时候,出现莫名其妙的段错误。问题出现在使用libcurl开多线程从任务队列下载文件后,因为下载队列空,所有下载线程锁在pthread_mutex_lock。这时,程序空闲几秒后会因为出现Segmentation fault退出。反复看我的代码也没看出什么问题来,最后竟然在讲libcurl基础的地方找到了答案,真惭愧,基础很重要啊!原来libcurl在configure默认配置编译的情况下,它是使用alarm+siglongjmp实现域名解析超时。当多个线程都使用超时处理的时候,同时主线程中有sleep或是wait等操作。libcurl将会发信号打断这个wa 阅读全文
posted @ 2012-10-08 09:31 feisky 阅读(2189) 评论(0) 推荐(0)
浙公网安备 33010602011771号