diff options
author | Daniel Stenberg <daniel@haxx.se> | 2010-08-10 11:02:07 +0200 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2010-08-15 13:16:39 +0200 |
commit | 232ad6549a684505efcbb6ed9d7a78943cc5f817 (patch) | |
tree | 92f16de7818a0592fba40107bea2ceb97166cd58 /lib/multiif.h | |
parent | 03da3ba1c0c26fa3d7113d469eac992cf972dc5a (diff) | |
download | curl-232ad6549a684505efcbb6ed9d7a78943cc5f817.tar.gz |
multi: support timeouts
Curl_expire() is now expanded to hold a list of timeouts for each easy
handle. Only the closest in time will be the one used as the primary
timeout for the handle and will be used for the splay tree (which sorts
and lists all handles within the multi handle).
When the main timeout has triggered/expired, the next timeout in time
that is kept in the list will be moved to the main timeout position and
used as the key to splay with. This way, all timeouts that are set with
Curl_expire() internally will end up as a proper timeout. Previously any
Curl_expire() that set a _later_ timeout than what was already set was
just silently ignored and thus missed.
Setting Curl_expire() with timeout 0 (zero) will cancel all previously
added timeouts.
Corrects known bug #62.
Diffstat (limited to 'lib/multiif.h')
-rw-r--r-- | lib/multiif.h | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/lib/multiif.h b/lib/multiif.h index 798544e06..76918181e 100644 --- a/lib/multiif.h +++ b/lib/multiif.h @@ -7,7 +7,7 @@ * | (__| |_| | _ <| |___ * \___|\___/|_| \_\_____| * - * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel@haxx.se>, et al. + * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel@haxx.se>, et al. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution. The terms @@ -27,8 +27,6 @@ */ void Curl_expire(struct SessionHandle *data, long milli); -void Curl_multi_rmeasy(void *multi, CURL *data); - bool Curl_multi_canPipeline(const struct Curl_multi* multi); void Curl_multi_handlePipeBreak(struct SessionHandle *data); |