Thanks Daniel. I am using multiple threads but each thread is doing "init+perform".
Are you saying if thread_1 does init() & if thread_2 uses the handle returned by init (from thread_1) to invoke perform() API then we may get into "easy handled already used in multi handle" issue ? *Do we need same thread always invoke init + perform ?* thanks, krishna On Wed, Feb 13, 2019 at 5:00 AM Dave Reisner via curl-library < curl-library@cool.haxx.se> wrote: > On Tue, Feb 12, 2019 at 06:49:17AM -0800, kishore koney via curl-library > wrote: > > Thanks Daniel. > > > > I am not pretty sure when you said " you're adding one of those handles > > twice." What does it mean ? > > All that I am using is curl_easy_init(), curl_easy_perform(), > curl_easy_cleanup > > APIs. > > Your original email mentions multiple threads. Are you trying to use a > single easy handle across all of the threads, or are you calling > init+perform for each thread? The former scenario would have a high > likelihood of encountering the error you describe. > > > I am getting the error(easy handled already used in multi handle) when I > called > > curl_easy_init() followed by curl_easy_perform ? Which of these API is > adding > > handles twice to ??? > > > > thanks, krishna > > > > On Mon, Feb 11, 2019 at 10:48 AM Daniel Stenberg <dan...@haxx.se> wrote: > > > > On Mon, 11 Feb 2019, kishore koney via curl-library wrote: > > > > > I am using *libcurl(version = 7.61.1*]*)* easy API for downloading > http > > > url/files(as byte-range chunks). I am getting > libcurl_easy_perform() > > return > > > error_code(*2*) and errorBuffer((*easy handled already used in > multi > > > handle*). I am opening 10 concurrent active libcurl easy handles > as part > > of > > > 10 threads in a process. Is that OK ? > > > > Sure, that's fine. But since this error occurs, it sounds as if > you're > > adding > > one of those handles twice. > > > > > Is there any limit on how many concurrent libcurl easy > > > handles(libcurl_easy_init) a process can keep active at a time ? > > > > No. Although you might run into problems when reaching the maximum > number > > of > > open file descriptors you can have in a process, which typically > defaults > > to > > 1024. > > > > > *I do not get this error all the time but once in a while(1 out of > 10 > > easy > > > handles). Are there any tips on handling this error ? What context > will > > > raise this error ?* > > > > It explains itself: when you try to add a handle to a multi handle > that > > already is added to a multi handle. > > > > > Are there any libcurl usergroups/forums where I can post my libcurl > > queries > > > ? > > > > I would say that this is the most suitable one. > > > > -- > > > > / daniel.haxx.se > > > > > ------------------------------------------------------------------- > > Unsubscribe: https://cool.haxx.se/list/listinfo/curl-library > > Etiquette: https://curl.haxx.se/mail/etiquette.html > > ------------------------------------------------------------------- > Unsubscribe: https://cool.haxx.se/list/listinfo/curl-library > Etiquette: https://curl.haxx.se/mail/etiquette.html
------------------------------------------------------------------- Unsubscribe: https://cool.haxx.se/list/listinfo/curl-library Etiquette: https://curl.haxx.se/mail/etiquette.html