Libevent is an asynchronous event notification library that 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. Currently, libevent supports /dev/poll,
kqueue(2), event ports, select(2), poll(2) and epoll(4).
.
If you want threading support and you're using pthreads, you'll need
to link against the libevent_pthreads library in addition to
libevent_core.