分类存档: C/C++ - 第2页

libcurl 的 Segmentation fault

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

继续阅读 »

基于C语言的soap网络接口远程方法调用

因为工作中需要用到远程方法调用(RPC?)。本人标准的懒人一枚。so向谷哥询问有没有现成的比较好用的东西可用。于是就发现了gsoap。目前最新版本是2.8.8,这个东西的神奇之处在于可以轻松的传送结构体,让你可以专心做数据处理,而且集成web service方便接口发布。而且再在前面放一web server做个反向代理,就算是分布式计算啦! 一看开发包我勒个去,toolkit 13.8M的大家伙啊,看了看发现其实有用的东西不多。因为里面有linux,mac,win三个平台的二进制工具,大片代码文件是编译其他平台gsoap工具用的,一般情况也用不到。做linux的C语言远程调用需要的只有这么几个 …

继续阅读 »