Dasynq is an event loop library similar to libevent, libev and libuv.
Key features/attributes are: written in portable C++ code (C++11); Thread safe — full support for use in a multi-threaded application; Header-only library — does not install a shared library; Supports file I/O, signals, process termination and timer events; Linux, OpenBSD, FreeBSD, MacOS — and portable to others.
Like other such libraries, it is crossplatform / portable. Unlike most other such libraries, it is intended to be completely usable in a multi-threaded client program, and it is written in C++; furthermore the API is designed to allow the creation of extremely robust clients.
Dasynq works on Linux, OpenBSD, FreeBSD and MacOS, and it should be easily portable to other POSIX-like operating systems.
1.1.403 Apr 2018 03:15
Document the pre-existing "add_timer() with lambda" function.
Change "add_timer()" (with lambda) to accept const timespec arguments (previously the parameter types were non-const).
Broken timer example in introduction (USAGE.md).
Various internal changes.
1.1.309 Mar 2018 03:15
Timers not working on non-Linux systems.
Includes CMake files (makes it easier for projects using CMake to use Dasynq).
Build for platforms without kqueue or epoll.
Install for BSDs.
1.1.227 Feb 2018 16:08
Build fixes for BSDs.