Recently, I was debugging something in a very big Qt application. The problem is that I have a stuck (lag) application sometimes. I tried so many things and different ways to find which one was blocking the GUI thread.
- I disabled so many parts of the application to find the bottleneck, so I found a part.
- disabled just that part, and it was not anymore, but the problem is that the part is doing something for just 2-3 seconds, and it finishes after that, but I have lags for so long later too, and when I disable that, I have not anymore. it's weird.
- So I used so many profilers; the last one was better for me, the Intelvtune amplifier. but it can't help me so much.
So the best solution for me now, I think, is to watch the tasks that are queued in the event loop and see which ones are consuming more than 30 ms, but I don't know how to see what's calling in the event loop (internal). Do you have any suggestions or solutions? thanks.