curl_multi_perform/socket_action.3: clarify what errors mean

An error returned from one of these funtions mean that ALL still ongoing
transfers are to be considered failed.

Ref: #8114
Closes #8120
This commit is contained in:
Daniel Stenberg 2021-12-08 15:37:37 +01:00
parent e067f46c4d
commit 436cdf8204
No known key found for this signature in database
GPG Key ID: 5CC908FDB71E12C2
2 changed files with 12 additions and 2 deletions

View File

@ -43,8 +43,8 @@ store the number of handles that still transfer data in the second argument's
integer-pointer. integer-pointer.
If the amount of \fIrunning_handles\fP is changed from the previous call (or If the amount of \fIrunning_handles\fP is changed from the previous call (or
is less than the amount of easy handles you have added to the multi handle), you is less than the amount of easy handles you have added to the multi handle),
know that there is one or more transfers less "running". You can then call 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 \fIcurl_multi_info_read(3)\fP to get information about each individual
completed transfer, and that returned info includes CURLcode and more. If an completed transfer, and that returned info includes CURLcode and more. If an
added handle fails quickly, it may never be counted as a running_handle. You added handle fails quickly, it may never be counted as a running_handle. You
@ -53,6 +53,11 @@ handles in that case.
When \fIrunning_handles\fP is set to zero (0) on the return of this function, When \fIrunning_handles\fP is set to zero (0) on the return of this function,
there is no longer any transfers in progress. there is no longer any transfers in progress.
When this function returns error, the state of all transfers are uncertain and
they cannot be continued. \fBcurl_multi_perform(3)\fP should not be called
again on the same multi handle after an error has been returned, unless first
removing all the handles and adding new ones.
.SH EXAMPLE .SH EXAMPLE
.nf .nf
int still_running; int still_running;

View File

@ -65,6 +65,11 @@ timeout action: call the \fIcurl_multi_socket_action(3)\fP function with the
\fIcurl_multi_timeout(3)\fP function to poll the value at any given time, but \fIcurl_multi_timeout(3)\fP function to poll the value at any given time, but
for an event-based system using the callback is far better than relying on for an event-based system using the callback is far better than relying on
polling the timeout value. polling the timeout value.
When this function returns error, the state of all transfers are uncertain and
they cannot be continued. \fBcurl_multi_socket_action(3)\fP should not be
called again on the same multi handle after an error has been returned, unless
first removing all the handles and adding new ones.
.SH "TYPICAL USAGE" .SH "TYPICAL USAGE"
1. Create a multi handle 1. Create a multi handle