Version 3.8 of libev

Release Notes: This release fixes a bug caused by ev_default_destroy not properly freeing all resources. It also contains a lot of changes to the signal handling. Most notably, it is now allowed to start signal watchers in any loop, given that they do not bind on the same signal. On GNU/Linux systems, libev will now take avdantage of signalfd functionality if available, and will also use thread-safe variants of the epoll_create/signalfd and eventfd syscalls, when available.

    Other releases

    •  14 Jan 2011 12:50

      Release Notes: This release works around epoll problems with /dev/random and other devices, officially supports polling files with all backends, works around a bunch of eventport-related kernel bugs in Solaris, and implements interfaces so that multithreaded programs can do their own custom signal handling.

      •  06 Nov 2010 01:02

        Release Notes: This release concentrates on bugfixes and API changes, not on major features. Apart from making many function names more logical (while providing backward compatibility to libev 3.x), there are improvements in the documentation, a better minimal mechanism (you can now have a full event library with epoll in 5kb of code). The majority of changes, however, are small to medium bugfixes in the core, the epoll, poll, and ports backend as well as many compatibility fixes and bug workarounds for systems as dead as AIX, kernel backends as broken as epoll, and PITAs as painful as Darwin and Windows.

        •  31 Dec 2009 09:09

          Release Notes: This release fixes a larger number of minor portability issues and bugs. It also disables signalfd usage by default, as too much software is broken and gets confused by blocked signals (e.g. glib's threadpool). On the feature side, ev_stat watchers now guarantee a difference between previous and current stats, libev will take advantage of inotify_init1 if available, idle watchers can now be disabled when embedding, and the C++ API now has an ev::timer->remaining () method.

          •  09 Aug 2009 15:09

            Release Notes: This release fixes a bug caused by ev_default_destroy not properly freeing all resources. It also contains a lot of changes to the signal handling. Most notably, it is now allowed to start signal watchers in any loop, given that they do not bind on the same signal. On GNU/Linux systems, libev will now take avdantage of signalfd functionality if available, and will also use thread-safe variants of the epoll_create/signalfd and eventfd syscalls, when available.

            •  17 Jul 2009 17:24

              Release Notes: This release most notably adds hooking functionality to make it easier to share event loops between multiple threads. It fixes a bug in ev_unloop and multiple threads, improves timing precision under Windows, and improves the documentation in many areas. The recursion depth and the remaining time for a timeout can now be queried, the io_collect_interval interpretation has changed slightly, there is now a reduced API option, and a number of minor bugs w.r.t. configuration have been fixed.

              Screenshot

              Project Spotlight

              Marathon

              A tool that records and executes Java GUI-driven acceptance tests.

              Screenshot

              Project Spotlight

              RemoteViewing

              An embeddable .NET-native VNC client and server library.