Cppev is a high performance C++ asyncio / multithreading / multiprocessing library.
Support nonblocking-io of disk-file / pipe / fifo / socket.
Support socket protocol-type tcp / udp, protocol-family ipv4 / ipv6 / unix-domain.
Support readable / writable event handling by io-multiplexing.
Support subthread / threadpool / signal-handing / async-logger / reactor.
Support semaphore / shared-memory.
Support mutex / condition-variable / read-write-lock shared among processes.
Support executable-file loading by subprocess, dynamic-library loading in runtime.
OS : Linux / macOS
Dependency : googletest
Build
$ mkdir build && cd build
$ cmake .. && make
Install
$ make install
Run Unittest
$ cd unittest && ctest
Build
$ bazel build //...
Run Unittest
$ bazel test //...
Please see the examples along with a tutorial.