On 8/25/06, daniel.haxx / gmail.com <daniel.haxx / gmail.com> wrote:
 > You _could_ read up on the libcurl details in the libcurl docs, but
> then what fun would that be? Let's continue making assumptions like
> this...
>
> No, it is _not_ asynchronous inside a system call and it is _not_ using
> the native getaddrinfo() for asynchronous name resolves.
>


Never mind, I figured it out. As I suspected, curl just wrote their
own protocol handler for DNS lookups. They fit it into their
event-driven architecture so name lookups can be happening
simultaneously with other work. I didn't see any cacheing or anything
similar but maybe I didn't look hard enough. As with other approaches,
there's no magic speedup- you still have to write your program in such
a way as to capture the concurrency.