+ - usually less calls to gettimeofday and clock_gettime
+ (libevent calls it on every timer event change, libev twice per iteration).
+
+ - watchers use less memory
+ (libevent watcher on amd64: 152 bytes, libev native: <= 56 bytes, libevent emulation: 144 bytes).
+
+ - library uses less memory
+ (libevent allocates large data structures wether used or not, libev
+ scales all its data structures dynamically).
+
+ - no hardcoded arbitrary limits
+ (libevent contains an off-by-one bug and sometimes hardcodes limits).
+
+ - libev separates timer, signal and io watchers from each other
+ (libevent combines them, but with libev you can combine them yourself
+ by reusing the same callback and still save memory).
+
+ - simpler design, backends are potentially much simpler
+ (in libevent, backends have to deal with watchers, thus the problems with
+ wildly different semantics between diferent backends)
+ (epoll backend in libevent: 366 lines no caching, libev: 90 lines full caching).
+
+ - libev handles EBADF gracefully by removing the offending fds.
+
+ - libev communicates errors to the callback, libevent to the
+ event adder or not at all.
+
+ - doesn't rely on nonportable BSD header files.
+
+ - an event.h compatibility header exists, and can be used to run a wide
+ range of libevent programs unchanged (such as evdns.c).
+
+ - win32 compatibility for the core parts.
+ (the backend is fd-based as documented and on other platforms,
+ not handle-based like libevent, and can be used for both winscoket environments
+ and unix-like ones).
+
+ - libev can be embedded easily with or without autoconf support into
+ other programs, with no changes to the source code necessary.
+
+ - the event core library (ev and event layer) compiles and works both as
+ C and C++.
+
+ - a simple C++ wrapper that supports methods as callbacks exists.
+
+ - a full featured and widely used perl module is available.
+
+ whats missing?
+
+ - no event-like priority support at the moment (the ev priorities work
+ differently, but you can use idle watchers to get a similar effect).
+
+AUTHOR
+
+ libev was written and designed by Marc Lehmann and Emanuele Giaquinta.
+
+ The following people sent in patches or made other noteworthy
+ contributions to the design (if I forgot to include you, please shout
+ at me, it was an accident):
+
+ W.C.A. Wijngaards
+ Christopher Layne
+ Chris Brody