IMKc 发表于 2023-11-17 16:19:58

【求助】Objectarx 2016 使用libcurl报错内存不足

因为有现成的webapi可以调用,便使用libcurl进行https的通信。
当我再主线程调用是无报错,后面我把这块代码几成到一个类里面方便调用,于是调试发现再执行的时候报错内存不足。后来定位是
```
CURLcode res = curl_easy_perform(curl);
```
导致的问题,想求教一下各位大神如何解决或者如果从服务器读取数据有什么方便的框架推荐。

这个是主要代码

```
curl_easy_setopt(curl, CURLOPT_URL, strUrl.c_str());
curl_easy_setopt(curl, CURLOPT_NOSIGNAL, 1L);
curl_easy_setopt(curl, CURLOPT_TIMEOUT, 300);
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, &webApi::downloadCallback);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, &strTmpStr);
curl_easy_setopt(curl, CURLOPT_NOSIGNAL, 1L);
CURLcode res = curl_easy_perform(curl);
```

IMKc 发表于 2023-11-17 17:17:33

已经解决,我是由于再设置回调函数的时候将类指针传入,但是这个需要的是实例指针导致的错误,降downloadCallback修改为静态函数并传入回调函数即可解决
页: [1]
查看完整版本: 【求助】Objectarx 2016 使用libcurl报错内存不足