Solved Image Scaling Example freezes (qt concurrent issue)
-
I built and run the official Image Scaling Example, it freezes if 12 or more files were selected.
My env:
Desktop_Qt_5_15_0_MSVC2019_64bitthe debug call stack show
-
Found some clues.
My CPU is AMD Ryzen 5 1600, 6 cores, 12 logical cores.
When AMD SMT is enabled, there are 12 logical cores available, and QFutureWatcher::setFuture() will freeze if 12 or more concurrent tasks are queued.
When SMT feature is disabled, setFuture() will freeze when 6 tasks or more are queued.The qt freezes when 12 (or 6 w/o SMT) tasks complete.
OS: Windows 10 Pro, 1903, 18362.1016
-
Is it possible to use qtconcurrent function without OpenGL involved? It seems that qt blocks in OpenGL relative calls.
-
This bug has been resolved in Qt 5.15.1.