cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: Libcurl Multi-Environment Timing Problems

From: Paul Romero <paulr_at_rcom-software.com>
Date: Mon, 12 Jul 2010 20:38:21 -0700

Daniel Stenberg wrote:

> On Sat, 10 Jul 2010, Paul Romero wrote:
>
> > The problem occurred due to the following stupid assumption about socket and
> > file descriptors. The assumption is that they can be programmed to generate
> > an event when there is a transition from output being blocked to not being
> > blocked. This is not true for any Linux/Unix drivers I know of
>
> That's not the job of any "driver". SIGIO/SIGPOLL is a matter for the TCP/IP
> stack itself. But if you're going for wide portability as you say you do, then
> libcurl already provides much greater portability for asynch transfers than
> you'll achieve with anything using SIGIO.
>
> If you're going for something properly event-based, you're much better off
> using a portable event-library such as libev or libevent that can use any of a
> set of backends depending on what the target operating system provides. Any
> libcurl works perfectly fine with event-based approaches as well. If you're
> going beyond a few hundred connections that's the only sane approach.

I agree with this. In addition, SIGIO/SIGPOLL are not suitable for
heavy loads because of the infamous Unix/Linux signal loss problem.

>
>
> --
>
> / daniel.haxx.se
> -------------------------------------------------------------------
> List admin: http://cool.haxx.se/list/listinfo/curl-library
> Etiquette: http://curl.haxx.se/mail/etiquette.html

--
Paul Romero
RCOM Communications Software
Phone/Fax: (510)339-2628
E-Mail: paulr_at_rcom-software.com
-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette:  http://curl.haxx.se/mail/etiquette.html
Received on 2010-07-13