Subject: heads up: libevent integration
To: None <>
From: Niels Provos <>
List: tech-userlevel
Date: 06/08/2003 17:37:44

this is a heads up for the upcoming integration of libevent into the

Libevent provides a simple API to abstract event notification and
handling.  Applications are notified via callbacks on IO events,
timers and signals.  Libevent is meant to replace the event loop found
in event driven software.  It automatically picks the best underlying
operating system primitive.  In the case of NetBSD, this is kqueue(2)
with poll(2) as a fall back.

The code is small and has been used by many people over the years to
implement event driven software.  You can find all the information at

The page includes screenshots that show performance comparisons
between kqueue and poll.  Any application that is written towards
libevent automatically makes use of the fastest available primitive.

The signal callbacks allow an application to call all libc functions
without having to worry about reliability and security of signal
handlers, which usually allow only a small subset of safe functions.