easy:SetOpt_ProgressFunction(progress_callback[, userdata])
Der Callback erhält vier Parameter: Der erste Parameter gibt die Gesamtzahl
der Bytes an, die libcurl bei dieser Übertragung herunterladen soll.
Der zweite Parameter ist die Anzahl der bisher heruntergeladenen Bytes.
Der dritte Parameter gibt die Gesamtzahl der Bytes an, die libcurl bei dieser
Übertragung erwartet und der vierte Parameter gibt die Anzahl der bisher
hochgeladenen Bytes an. Wenn Sie das optionale Argument userdata
übergeben,
wird der in userdata
übergebene Wert als fünfter Parameter an Ihre
Callback-Funktion übergeben. Der Parameter userdata
kann einen beliebigen
Typ haben.
An den Callback übergebene unbekannte/nicht verwendete Argumentwerte werden auf Null gesetzt (wenn Sie nur Daten herunterladen, bleibt die Upload-Größe 0). Oft wird der Callback zuerst einmal oder mehrmals aufgerufen, bevor er die Datengrößen kennt, so dass das Programm dementsprechend erstellt werden muss, um das zu berücksichtigen.
Wenn Sie von diesem Callback einen Wert ungleich Null zurückgeben, bricht
libcurl die Übertragung ab und gibt #CURLE_ABORTED_BY_CALLBACK
zurück.
Wenn Sie Daten mit der Multi-Schnittstelle übertragen, wird diese Funktion nicht während Leerlaufzeiten aufgerufen, es sei denn, Sie rufen die entsprechende libcurl-Funktion auf, die die Übertragungen durchführt.
#CURLOPT_NOPROGRESS
muss auf 0 gesetzt sein, damit diese Funktion
tatsächlich aufgerufen wird.