Repository navigation
Threadpool Refactor - #1168
Merged
Merged
Threadpool Refactor#1168
Conversation
This was
linked to
issues
Jan 26, 2025
COM8
force-pushed
the
feature/thread_pool_v2
branch
3 times, most recently
from
February 14, 2025 16:28
eba6332 to
a6c8fca
Compare
|
Hi, I would like to suggest use a third thread pool implementation: https://github.com/bshoshany/thread-pool |
Member
Author
Agree. If I'm unable to fix the macos socket issues, I will most likely switch and experiment with that one. Good point. |
|
The ASIO thread pool is also a good choice. |
COM8
force-pushed
the
feature/thread_pool_v2
branch
from
March 30, 2025 12:23
a15f238 to
bba1f7c
Compare
COM8
force-pushed
the
feature/thread_pool_v2
branch
from
June 14, 2025 12:53
e018f5e to
e31ba2d
Compare
Yes! With ASIO threadpool we could get an awaitable Get/Post and use that within a boost coroutine. That would be nice to have. |
COM8
force-pushed
the
feature/thread_pool_v2
branch
from
February 15, 2026 13:52
e31ba2d to
26f736c
Compare
COM8
force-pushed
the
feature/thread_pool_v2
branch
3 times, most recently
from
October 12, 2026 13:11
c2abb12 to
0e7f7bd
Compare
COM8
force-pushed
the
feature/thread_pool_v2
branch
from
October 12, 2026 13:13
0e7f7bd to
99bf59d
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refactors
cpr::ThreadPoolto get rid of all those deadlocks and overly complex code making it at least a bit simpler.Fixes:
Docs:
cpr::ThreadPoolDocumentation docs#54Selecting a Backend
Select the backend when configuring cpr. The builtin backend is the default and adds no dependencies:
With CMake FetchContent, set
CPR_THREAD_POOLbeforeFetchContent_MakeAvailable(cpr). Other values are rejected at configuration time. cpr does not download Boost; its public headers forward-declare the optional Asio context type. Installed cpr packages built withBOOST_ASIOdiscover the exact Boost version used to build cpr through their CMake package configuration, for both shared and static libraries.BUILTINBOOST_ASIOboost::asio::thread_poolwith a fixed worker count equal to the maximum. The minimum is retained as configuration.BOOST_ASIOwith a caller-owned context