Making Async play better with others

Yaron Minsky yminsky at gmail.com
Tue Nov 1 09:56:30 GMT 2011


On Tue, Nov 1, 2011 at 5:20 AM, Anil Madhavapeddy <anil at recoil.org> wrote:

> On Mon, Oct 31, 2011 at 01:45:35PM -0400, Nathan Linger wrote:
> > > It's pretty much the only game in town when it comes to cross-platform
> > > C-based asynchronous programming libraries however (as far as I know).
> >
> > Isn't libevent[1] the same sort of thing?  I believe it is the C-based
> > asynchronous programming library underlying memcached[2], which in turn
> > is used by several high-profile web applications -- their website lists
> > Wikipedia, WordPress.com, Flickr, Twitter, Typepad, Youtube, LiveJournal,
> > Digg, Craigslist, and a handful of others I didn't recognize.
>
> Yeah, but only for network I/O.  POSIX unfortunately demands threads for
> doing efficient file I/O, which libuv also seems to handle as more of a
> full-service library.


True, although libuv also seems a lot less tried-and-tested.  Also, doesn't
libevent do more than just network I/O now that it has support for IOCP?
 From a quick look around, it looks like IOCP support hit in libevent
version 2.  That said, I'm not terribly confident of any of this...


> > I dusted off the ocaml bindings for libevent[3] at home last year and
> > found them pretty usable for the small experiments I did (implementing a
> > monadic interface for CML-style concurrent programming).  Their
> website[1]
> > claims "Libevent should compile on Linux, *BSD, Mac OS X, Solaris,
> > Windows, and more."
>
> libev and libevent are pretty closely matched feature-wise. The author of
> libev has also done libeio ( http://software.schmorp.de/pkg/libeio.html )
> to handle POSIX I/O, but Windows support is lacking.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ocaml.org/pipermail/core/attachments/20111101/d0ea3920/attachment-0001.html>


More information about the core mailing list