libasync is awesome, and I'd highly recommend it.  But here are some
other caveats:

- select()-based, i.e., doesn't scale well if you are planning on tons
of simultaneous connections (not likely too critical of an issue for
most p2p apps).  It'd be cool if someone hacked in configurable
poll()/epoll() support.

- wrap() functionality (functors with currying) is great, but because
of the way the templates work, limits you to X (I think 4?) parameters
in most cases.  In most cases, that's all you need, and there are ways
to get around the limitation, but something to watch out for.

- wrap() works well with C++ methods, but it doesn't seem to
understand dynamic binding very well, forcing you to "manually"
implement virtual methods in subclasses if you want to wrap them.

- not cross-platform.  Has anyone gotten this to work under cygwin or
something similar?  Great if you are on unix, though.

All that said, libasync is still my favorite of the async network
programming libs out there for c/c++.  Even without much dev activity
(which could surely address the above issues) and little
documentation, you can make it work very quickly and very cleanly.  It
also happens to sit at the core of two of the fastest web servers in
the world, flash and okws.

Alen


On 11/10/06, Thomas Repantis <[EMAIL PROTECTED]> wrote:

I can only comment on libasync for what it's worth, since I've used it
in the past with positive results.

The outcome is pretty solid, no heisenbugs or anything of the sort.
Combined with "tame" syntax is quite straightforward.

Other than a few tutorials though there is no documentation.  You
oftentimes have to resort to the library's code to figure out the API
and the code is not commented.

Hope this helps!
Thomas

On Fri, Nov 10, 2006 at 02:54:58PM -0500, Yang wrote:

> The other option I am considering is C++, with either ACE, libasync,
> or asio. I was wondering if anyone can offer (experience-based)
> comparisons of the three (or even any two of the three).

--
http://www.cs.ucr.edu/~trep


_______________________________________________
p2p-hackers mailing list
[email protected]
http://lists.zooko.com/mailman/listinfo/p2p-hackers




_______________________________________________
p2p-hackers mailing list
[email protected]
http://lists.zooko.com/mailman/listinfo/p2p-hackers

Reply via email to