From c1a06d858de26054fe8add4d63261ea82cc2dcb7 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Tue, 3 Jan 2006 15:53:29 +0000 Subject: [PATCH] CURLOPT_PROGRESSFUNCTION is really not a good idea when using the multi interface --- docs/libcurl/curl_easy_setopt.3 | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/docs/libcurl/curl_easy_setopt.3 b/docs/libcurl/curl_easy_setopt.3 index c6ba03b64..b0c2745b0 100644 --- a/docs/libcurl/curl_easy_setopt.3 +++ b/docs/libcurl/curl_easy_setopt.3 @@ -169,11 +169,16 @@ added in 7.12.3) .IP CURLOPT_PROGRESSFUNCTION Function pointer that should match the \fIcurl_progress_callback\fP prototype found in \fI\fP. This function gets called by libcurl instead of -its internal equivalent with a frequent interval during data transfer. -Unknown/unused argument values will be set to zero (like if you only download -data, the upload size will remain 0). Returning a non-zero value from this -callback will cause libcurl to abort the transfer and return -\fICURLE_ABORTED_BY_CALLBACK\fP. +its internal equivalent with a frequent interval during data transfer (roughly +once per second). Unknown/unused argument values pass to the callback will be +set to zero (like if you only download data, the upload size will remain +0). Returning a non-zero value from this callback will cause libcurl to abort +the transfer and return \fICURLE_ABORTED_BY_CALLBACK\fP. + +If you transfer data with the multi interface, this function will not be +called during periods of idleness unless you call the appropriate libcurl +function that performs transfers. Usage of the \fBCURLOPT_PROGRESSFUNCTION\fP +callback is not recommended when using the multi interface. \fICURLOPT_NOPROGRESS\fP must be set to FALSE to make this function actually get called.