Using libcurl multi interface in a C++ program, but it only works if there is only one transfer at a time [closed]

3 weeks ago 26
ARTICLE AD BOX

I'm writing an application in C++ using libcurl, designed to handle multiple http requests simultaneously, so I'm using the libcurl multi interface. I'm using libcurl 8.17.0 on a Rocky 8 Linux machine (but the problem is the same using libcurl 7.61.1). The program works very well if I only add one easy handle to the multi handle (using curl_multi_add_handle()). However if I try to add a second easy handle, only the second transfer occurs normally (the first is blocked indefinitely). If I add three total easy handles to the multi handle, none of the transfers occur and there is absoutely no activity from libcurl (I've enabled CURLOPT_VERBOSE). I see my own program's debugging output only. My next step will to create a simpler program that contains just the libcurl function calls I'm using, in a linear fashion, that I can post. Before I do that, does this behavior sound familiar to anyone, and is there something not obvious to me that I'm overlooking?

Read Entire Article