curl-library
Re: Many easy handles, one socket?
Date: Mon, 23 Apr 2007 19:37:41 -0700
Nick,
Your easiest solution in a situation like this is to just reuse the
easy connection. You can still use you object oriented approach but
it needs to change just a bit.
I assume today you look something like this. (Abstracted for no
programming language in the world :)
someCurlData = new CurlBit;
someCurlData.Initialize(...);
someCurlData.Perform(...);
someCurlData.Terminate(...);
Now instead of calling the above for every time you need to grab data
just keep a collection or linked list of the connections you want in
a global or application construct. When you want to reuse a
connection search the collection for a connection that is not busy
(this assumes each connection is on its own thread since it locks
otherwise). Add some method like. someCurlData.IsBusy(); if it
returns true look for the next. If no results are found...create a
new instance and append it to the collection.
Now when you application closes call Teminate(...); for each item in
the collection.
If you where to switch to a multi or hyper interface I think you need
to do the same management as described above.
Hopefully someone will correct me if I am wrong here.
Matt
On Apr 23, 2007, at 7:02 PM, Nick Zitzmann wrote:
> I've got an object-oriented program. One of these objects holds a
> single CURL easy handle. Each instance of these objects are used
> only once, whenever we want to make a network connection. After the
> connection is done, the instance is deallocated.
Received on 2007-04-24