This is the web page for the Dasynq event loop library.
Version 1.1.7 now available (plugs a memory leak).
What is it?
Dasynq is an event loop library similar to libevent, libev and libuv.
- C++11 — written in portable C++ code
- 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
- Apache License version 2.0
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. For more details, see this blog post.
Dasynq works on Linux, OpenBSD, FreeBSD and MacOS, and it should be easily portable to other POSIX-like operating systems. It is available under the Apache License, version 2.0.
How do I use it?
Installation is simple. Dasynq is a header-only library, so you can just copy it into your application and include the <dasynq.h> header. Or, install it using the Makefile (see instructions [Github]).
Who wrote it?
Dasynq is the creation of Davin McCall, who you can contact via email at email@example.com, or as @davmac314 on Twitter.