cURL / Mailing Lists / curl-library / Single Mail


RE: threading problem on windows

From: Michael Mastroianni <>
Date: Sun, 4 Jul 2004 10:43:56 -0400

I finally got things to work by actually defining USE_ARES in config.h, rather than in the project settings. Now I can run with no problems. I do wonder what happened, though. I didn't see USE_THREAD_GET defined anywhere in the code...
the closest thing I could find was CURLRES_THREADED, defined if you're running W32.
I have code I can give you, but I'm not sure how... I've got a zip file containing the source, but I don't imagine the list mailer includes attachments. I'll try anyway. You'd have to change the include path and lib path for libcurl in the project settings.
thanks for any help.

        -----Original Message-----
        From: on behalf of Gisle Vanem
        Sent: Sun 7/4/2004 7:10 AM
        To: libcurl development
        Subject: Re: threading problem on windows

        "Michael Mastroianni" said:
> When I run a lot of threads (like 150), I get blowups in
> gethostbyname_thread in hostthre.c
> in particular, I blow up on the line:
> he = gethostbyname (conn->async.hostname);
        You mean it is NULL or some huge illegal value? I don't see how
        that can happen. The get*_thread() functions doesn't modify that
        string at all. Unless someone else stepping on 'conn->async'.
        Do you have an example program I could try?
> I got c-ares, built it, gave my curllib project the directories, told it
> to link against libares.lib, and defined USE_ARES in the project settings.
> Still, I end up here.
        That shouldn't happen; USE_THREAD_GET* isn't defined unless you defined
        it outside setup.h youself. Looks like your debugger isn't giving you the true
        story or the bug is elsewhere.
        Try to build libcurl with -DCURLDEBUG and watch for allocation errors.
        Look at src/main.c and curl_memdebug("memdump") for how that's done.

Received on 2004-07-04