YACLib
C++ library for concurrent tasks execution
|
Install GCC/Clang, CMake, make/ninja/etc.
Install xcode, CMake.
Install MSVC.
git clone <repo-url>
CMake options:
-G <generator-name>
(more info).-D CMAKE_BUILD_TYPE=<build-type>
(more info).-D CMAKE_CXX_COMPILER=<cxx-compiler-path>
Path to your C++ compiler.-D YACLIB_BUILD_TEST=<OFF(default) or ON or SINGLE>
If ON, then build tests, if SINGLE, then make one test target-D YACLIB_FLAGS=<EMPTY(default) or WARN or ASAN or TSAN or UBSAN or LSAN or MEMSAN or COVERAGE or CORO or DISABLE_FUTEX or DISABLE_UNSAFE_FUTEX or DISABLE_SYMMETRIC_TRANSFER or DISABLE_FINAL_SUSPEND_TRANSFER>
Any of the specified flags will enable/disable the respective build property or functionality.-D YACLIB_FAULT=<OFF(default) or THREAD or FIBER>
Using THREAD
will provide fault-injection functionality and using FIBER
will execute all operations in a single-threaded cooperative fiber scheduler.In POSIX-compliant shell: