Details
-
Bug
-
Resolution: Done
-
P3: Somewhat important
-
4.7.1, 4.7.3
-
None
-
Qt 4.7.1. WinXP. MSVC 2005. QuadCore: Intel i3 CPU 540 @ 3.07 GHZ.
-
dacf9961da86751a59da0e84bc943fe0d1c8d95b
Description
With the attached example, QThreadPool::globalInstance()->activeThreadCount() returns a negative number.
Once this occurs, and all thread(s) are have expired, then the next call to QThreadPool::start will only be queued, not actually run. If a second call to QThreadPool::start is made, then both calls will be run.
In the file QThreadPool.cpp, I noticed a typo in the name of function registerTheadInactive(). ("Thread" is missing the "r").
Attachments
For Gerrit Dashboard: QTBUG-21051 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
59490,4 | QThreadPool: fix counting of waiting threads | dev | qt/qtbase | Status: MERGED | +2 | 0 |