]> granicus.if.org Git - curl/commitdiff
CURLOPT_TIMEOUT.3: Clarify transfer timeout time includes queue time
authorJay Satiro <raysatiro@yahoo.com>
Tue, 15 Oct 2019 19:12:31 +0000 (15:12 -0400)
committerJay Satiro <raysatiro@yahoo.com>
Wed, 16 Oct 2019 18:20:16 +0000 (14:20 -0400)
Prior to this change some users did not understand that the "request"
starts when the handle is added to the multi handle, or probably they
did not understand that some of those transfers may be queued and that
time is included in timeout.

Reported-by: Jeroen Ooms
Fixes https://github.com/curl/curl/issues/4486
Closes https://github.com/curl/curl/pull/4489

docs/libcurl/opts/CURLOPT_TIMEOUT.3

index 1cd122df25d1c78177add48ed21f6ccb6eb71bfb..6de808257f7b293eb803331c7d0acb15fc2c2fbd 100644 (file)
@@ -40,11 +40,12 @@ In unix-like systems, this might cause signals to be used unless
 If both \fICURLOPT_TIMEOUT(3)\fP and \fICURLOPT_TIMEOUT_MS(3)\fP are set, the
 value set last will be used.
 
-Since this puts a hard limit for how long time a request is allowed to take,
-it has limited use in dynamic use cases with varying transfer times. You are
-then advised to explore \fICURLOPT_LOW_SPEED_LIMIT(3)\fP,
-\fICURLOPT_LOW_SPEED_TIME(3)\fP or using \fICURLOPT_PROGRESSFUNCTION(3)\fP to
-implement your own timeout logic.
+Since this option puts a hard limit on how long time a request is allowed to
+take, it has limited use in dynamic use cases with varying transfer times. That
+is especially apparent when using the multi interface, which may queue the
+transfer, and that time is included. You are advised to explore
+\fICURLOPT_LOW_SPEED_LIMIT(3)\fP, \fICURLOPT_LOW_SPEED_TIME(3)\fP or using
+\fICURLOPT_PROGRESSFUNCTION(3)\fP to implement your own timeout logic.
 .SH DEFAULT
 Default timeout is 0 (zero) which means it never times out during transfer.
 .SH PROTOCOLS