Установить тайм-аут при загрузке файла curl - PullRequest
0 голосов
/ 01 ноября 2018

Я использую CURL для загрузки файла, следуйте этой теме .

Мой код

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);, когда Интернет был потерян?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...