concurrencpp
cmake-init
concurrencpp | cmake-init | |
---|---|---|
16 | 164 | |
2,117 | 1,866 | |
- | - | |
1.0 | 8.1 | |
20 days ago | about 1 month ago | |
C++ | CMake | |
MIT License | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
concurrencpp
-
Is anyone using coroutines seriously?
I am using concurrencpp for my project. What I like about it is that it's basically a thread pool factory with coroutines. It allows for better structuring / organizing of multithreaded work. So for me the main advantage of coroutines is that the code looks easier to follow
- Concurrencpp – a C++20 library for coroutines and executors
-
Comparing asio to unifex
Equivalent concurrencpp code:
-
Do you think the current asynchronous models (executors, senders) are too complicated and really we just need channels and coroutines running on a thread pool?
I agree. I use concurrencpp for the exact use case you described - coroutines running on simple-to-understand-executors which return some asynchronous pipe for communication.
- concurrencpp version 0.1.6 has been released!
-
What happens if you co_await a std::future, and why is it a bad idea? - The Old New Thing
If you look at concurrencpp, you can control exactly where and how coroutines are resumed, using executors.
-
Collecting the best C++ practices
concurrencpp. Modern concurrency for C++. Tasks, executors, timers and C++20 coroutines to rule them all.
-
C++ Coroutines from scratch - Phil Nash - Meeting C++ 2022
Just use a good third party library like concurrencpp .
-
Header-only C++14 quality thread pool
Hi, I am looking for a header-only C++14 (or lower) quality thread pool. Ideally, it would be similar to BS::thread_pool but in C++14. Most of them I find on GitHub are bloated (e.g. concurrencpp) or have many open Issues. Ideal usage would be similar to:
-
Good repos for beginners to browse that follow best modern C++ practices (including testing, static analysis etc...)
I use concurrencpp for my asynchronous code and the repo is written in modern cpp, with tests, sanitizers and what not.
cmake-init
-
CMake install schema for single- and multi-config generators
https://github.com/friendlyanon/cmake-init This is how you do CMake properly. If you deviate from its install rules you are highly likely to do something wrong.
-
cgen: another declarative CMake configuration generator
CMake itself is as declarative as a build systems need to be. For anything nontrivial, these "declarative" solutions all fall apart. Just use https://github.com/friendlyanon/cmake-init, learn CMake and you won't have any issues.
-
How does one actually build a C++ project
If you want something with a (mostly) Just Works experience then just use https://github.com/friendlyanon/cmake-init
- CMakeList.txt, add_executable vs. add_library vs. target_link_libraries vs. target_link_directories
- Check out my tasks.json for C++ of VScode
- Clang++ Halp
-
Putting libraries in program folder
For CMake basics check out the official "Getting started" tutorial: https://cmake.org/cmake/help/latest/guide/tutorial/index.html, as well as Introduction to Modern CMake. You can also get inspired by the CMake project generator cmake-init
- Recourses to help understand libraries/projects and setting them up?
-
How to Create a Modern C Project with CMake and Conan
You can just use https://github.com/friendlyanon/cmake-init to get a CMake + Conan C project ready to go with a short little command: cmake-init --c -e -p conan coolio
- CMake template
What are some alternatives?
libunifex - Unified Executors
meson - The Meson Build System
asio-grpc - Asynchronous gRPC with Asio/unified executors
w64devkit - Portable C and C++ Development Kit for x64 (and x86) Windows
sobjectizer - An implementation of Actor, Publish-Subscribe, and CSP models in one rather small C++ framework. With performance, quality, and stability proved by years in the production.
xmake - 🔥 A cross-platform build utility based on Lua
PhotonLibOS - Probably the fastest coroutine lib in the world!
fastbuild - High performance build system for Windows, OSX and Linux. Supporting caching, network distribution and more.
coost - A tiny boost library in C++11.
ModernCppStarter - 🚀 Kick-start your C++! A template for modern C++ projects using CMake, CI, code coverage, clang-format, reproducible dependency management and much more.
ue5coro - A gameplay-focused C++17/20 coroutine implementation for Unreal Engine 5.
llvm-mingw - An LLVM/Clang/LLD based mingw-w64 toolchain