You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I've tried the below settings: cpr::async::startup(4,10);
But if launching massive POST requests to the CPR at the same time, after a while, the cpr::GlobalThreadPool::GetInstance()->GetIdelThreadm() output the value is greater than the 10.
I've taken a look at the source code, I think there needs to be a lock added when determining the thread numbers to create a new thread if the Submit is called concurrently:
auto Submit(Fn&& fn, Args&&... args) {
if (status == STOP) {
Start();
}
if (idle_thread_num <= 0 && cur_thread_num < max_thread_num) {
CreateThread();
}
Example/How to Reproduce
Just launching massive POST requests at the same time, then after a while, output the cpr::GlobalThreadPool::GetInstance()->GetIdelThreadm() .
Possible Fix
No response
Where did you get it from?
conan
Additional Context/Your Environment
OS: Windows 10, Debian 12
Version: Windows 10, Debian 12
The text was updated successfully, but these errors were encountered:
Description
I've tried the below settings:
cpr::async::startup(4,10);
But if launching massive POST requests to the CPR at the same time, after a while, the
cpr::GlobalThreadPool::GetInstance()->GetIdelThreadm()
output the value is greater than the 10.I've taken a look at the source code, I think there needs to be a lock added when determining the thread numbers to create a new thread if the Submit is called concurrently:
Example/How to Reproduce
Just launching massive POST requests at the same time, then after a while, output the
cpr::GlobalThreadPool::GetInstance()->GetIdelThreadm()
.Possible Fix
No response
Where did you get it from?
conan
Additional Context/Your Environment
The text was updated successfully, but these errors were encountered: