diff options
author | Daniel Stenberg <daniel@haxx.se> | 2010-02-01 21:42:44 +0000 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2010-02-01 21:42:44 +0000 |
commit | 55f1e787f34cd3d86aa3d6bf981f077de86be265 (patch) | |
tree | a1c1dcbf05a0e54af3cbeec6da49c39d6542c87e /docs/libcurl | |
parent | 516cf5c8ddd6a094babdf4ee2d3b2fa4c7a48b0e (diff) |
We introduce a loop in lib/multi.c around all calls to multi_runsingle() and
simply check for CURLM_CALL_MULTI_PERFORM internally. This has the added
benefit that this goes in line with my long-term wishes to get rid of the
CURLM_CALL_MULTI_PERFORM all together from the public API.
Diffstat (limited to 'docs/libcurl')
-rw-r--r-- | docs/libcurl/curl_multi_perform.3 | 25 | ||||
-rw-r--r-- | docs/libcurl/curl_multi_socket_action.3 | 25 |
2 files changed, 24 insertions, 26 deletions
diff --git a/docs/libcurl/curl_multi_perform.3 b/docs/libcurl/curl_multi_perform.3 index 746ff3de0..daf15c478 100644 --- a/docs/libcurl/curl_multi_perform.3 +++ b/docs/libcurl/curl_multi_perform.3 @@ -22,25 +22,26 @@ changed from the previous call (or is less than the amount of easy handles you've added to the multi handle), you know that there is one or more transfers less "running". You can then call \fIcurl_multi_info_read(3)\fP to get information about each individual completed transfer, and that returned -info includes CURLcode and more. +info includes CURLcode and more. If an added handle fails very quickly, it may +never be counted as a running_handle. When \fIrunning_handles\fP is set to zero (0) on the return of this function, there is no longer any transfers in progress. .SH "RETURN VALUE" CURLMcode type, general libcurl multi interface error code. -If you receive \fICURLM_CALL_MULTI_PERFORM\fP, this basically means that you -should call \fIcurl_multi_perform\fP again, before you select() on more -actions. You don't have to do it immediately, but the return code means that -libcurl may have more data available to return or that there may be more data -to send off before it is "satisfied". Do note that \fIcurl_multi_perform(3)\fP -will return \fICURLM_CALL_MULTI_PERFORM\fP only when it wants to be called -again \fBimmediately\fP. When things are fine and there is nothing immediate -it wants done, it'll return \fICURLM_OK\fP and you need to wait for \&"action" -and then call this function again. +Before version 7.20.0: If you receive \fICURLM_CALL_MULTI_PERFORM\fP, this +basically means that you should call \fIcurl_multi_perform\fP again, before +you select() on more actions. You don't have to do it immediately, but the +return code means that libcurl may have more data available to return or that +there may be more data to send off before it is "satisfied". Do note that +\fIcurl_multi_perform(3)\fP will return \fICURLM_CALL_MULTI_PERFORM\fP only +when it wants to be called again \fBimmediately\fP. When things are fine and +there is nothing immediate it wants done, it'll return \fICURLM_OK\fP and you +need to wait for \&"action" and then call this function again. -NOTE that this only returns errors etc regarding the whole multi stack. Problems -still might have occurred on individual transfers even when this +This function only returns errors etc regarding the whole multi stack. +Problems still might have occurred on individual transfers even when this function returns \fICURLM_OK\fP. .SH "TYPICAL USAGE" Most applications will use \fIcurl_multi_fdset(3)\fP to get the multi_handle's diff --git a/docs/libcurl/curl_multi_socket_action.3 b/docs/libcurl/curl_multi_socket_action.3 index cc53dbbb0..65eef4e3f 100644 --- a/docs/libcurl/curl_multi_socket_action.3 +++ b/docs/libcurl/curl_multi_socket_action.3 @@ -22,8 +22,8 @@ CURL_CSELECT_ERR. When the events on a socket are unknown, pass 0 instead, and libcurl will test the descriptor internally. At return, the integer \fBrunning_handles\fP points to will contain the number -of still running easy handles within the multi handle. When this number -reaches zero, all transfers are complete/done. Note that when you call +of running easy handles within the multi handle. When this number reaches +zero, all transfers are complete/done. When you call \fIcurl_multi_socket_action(3)\fP on a specific socket and the counter decreases by one, it DOES NOT necessarily mean that this exact socket/transfer is the one that completed. Use \fIcurl_multi_info_read(3)\fP to figure out @@ -89,19 +89,16 @@ The \fIuserp\fP argument is a private pointer you have previously set with .SH "RETURN VALUE" CURLMcode type, general libcurl multi interface error code. -Legacy: If you receive \fICURLM_CALL_MULTI_PERFORM\fP, this basically means -that you should call \fIcurl_multi_socket_action(3)\fP again, before you wait -for more actions on libcurl's sockets. You don't have to do it immediately, -but the return code means that libcurl may have more data available to return -or that there may be more data to send off before it is "satisfied". +Before version 7.20.0: If you receive \fICURLM_CALL_MULTI_PERFORM\fP, this +basically means that you should call \fIcurl_multi_socket_action(3)\fP again +before you wait for more actions on libcurl's sockets. You don't have to do it +immediately, but the return code means that libcurl may have more data +available to return or that there may be more data to send off before it is +"satisfied". -In modern libcurls (from around 7.19.0 or later), -\fICURLM_CALL_MULTI_PERFORM\fP or \fICURLM_CALL_MULTI_SOKCET\fP will not be -returned and no application needs to care about them. - -NOTE that the return code from this function is for the whole multi stack. -Problems still might have occurred on individual transfers even when one of -these functions return OK. +The return code from this function is for the whole multi stack. Problems +still might have occurred on individual transfers even when one of these +functions return OK. .SH "TYPICAL USAGE" 1. Create a multi handle |