Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
5.15.1
-
None
-
-
fe36d47b371b71ad5fec30d4b5d7bf0baa0205ea (qt/qtbase/dev) a5e6c50ef45e9b75867e1730c510f5739b00f176 (qt/qtbase/5.15)
Description
There is a crash in QThreadPool::clear() when auto-deleting QRunnables are being used.
Attachment a very simple example project which does this in a loop:
- Calls QThreadPool::clear()
- Starts a bunch of runnables (~500) in QThreadPool. QRunnable::autoDelete() = true
- goto 1
After a few iterations it crashes on QThreadPool::clear(). This happens consistently
I think the culprit is this commit. I've tried reverting it and the crash disappears.
Attachments
For Gerrit Dashboard: QTBUG-87092 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
315933,3 | Fix race condition in QThreadPool::clear | dev | qt/qtbase | Status: MERGED | +2 | 0 |
315990,3 | Fix race condition in QThreadPool::clear | 5.15 | qt/qtbase | Status: MERGED | +2 | 0 |