The libevent API provides a mechanism to execute a callback function when a specific event occurs on a file descriptor or after a timeout has been reached. It is meant to replace the asynchronous event loop found in event-driven network servers.
| Tags | Software Development Libraries |
|---|---|
| Licenses | BSD Original BSD Revised |
| Operating Systems | POSIX |
Recent releases


Changes: This release fixes a number of bugs in the HTTP layer as well as signal processing.


Changes: This release fixed several memory leaks in the HTTP layer, fixed signal handling for multi-threaded applications, and fixed issues with the timer cache when leaving or entering the event loop.


Changes: This release contains several small bugfixes, including epoll timeouts larger than 35 minutes on older Linux kernels and portability improvements for Windows and IRIX.


Changes: Several new APIs have been introduced (event_base_new, event_reinit, event_loopbreak, etc.). RPC structures can now use 32-bit structure identifiers. The performance of the Windows backend has been improved. There are additional bug and correctness fixes.


Changes: This release contains a new RPC subsystem that makes it easy to write distributed servers and clients. Almost everything is documented via Doxygen now. There have been a bunch of fixes and improvements to evdns and evhttp. Libevent now builds two additional libraries: libevent_core (containing only the event core) and libevent_extras (contained evdns, evhttp, and evrpc). Performance was slightly improved due to using a heap instead of red-black trees for timeouts. Finally, Solaris' event ports are better supported.