Я использую libcurl с CURLOPT_WRITEFUNCTION для загрузки определенного файла.
Я запрашиваю определенный размер буфера, используя CURLOPT_BUFFERSIZE.
Когда моя функция обратного вызова вызывается в первый раз, и я получаю околостолько байт, тем больше данных фактически загружено.
Например, если я запрашиваю 1024 байта данных, когда я впервые получаю это, процесс уже использует 100 КБ данных (на основеподобные инструменты. Я вижу непрерывный поток данных и ACK в Wireshark), поэтому я предполагаю, что он загружает заранее и буферизует данные.
То, чего я пытаюсь достичь, - это возможность отменитьпоиск, основанный на первых нескольких порциях данных, без загрузки чего-либо ненужного.
Есть ли способ предотвратить такую буферизацию и загружать следующий порцию данных только после того, как я закончу обработку текущего (илипо крайней мере, не для буферизации десятков и сотен килобайт)?
Я бы предпочелЭто решение не зависит от сервера, поэтому CURLOPT_RANGE здесь на самом деле не работает.