设置curl下载文件超时

时间:2018-11-01 10:41:52

标签: curl

我正在使用CURL下载文件,请遵循topic

我的代码是

static size_t WriteCallback(void *contents, size_t size, size_t nmemb, FILE *stream)
{
    size_t written = fwrite(contents, size, nmemb, stream);
    return written;
}

//...
int main(void) {
     CURL *curl;
     CURLcode res;
     FILE *fp;
     char outFilename[256] = "test.bin";
     curl = curl_easy_init();
     if (curl) {
          fp = fopen(outfilename,"wb");
          curl_easy_setopt(curl, CURLOPT_URL,"https://speed.hetzner.de/100MB.bin");
          curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback);
          curl_easy_setopt(curl, CURLOPT_WRITEDATA, fp);
          res = curl_easy_perform(curl);
          curl_easy_cleanup(curl);
          fclose(fp);
     }
     return 0;
}

但是,如果在下载过程中连接断开,则代码未通过此行代码curl_easy_cleanup(curl);传递,我必须等待很长时间。我的问题是:

当互联网丢失时,如何通过功能curl_easy_cleanup(curl);设置超时?

0 个答案:

没有答案