Details
-
Bug
-
Resolution: Fixed
-
P3: Somewhat important
-
2.4.3
-
None
Description
At work, we have a very large number of projects within our solution (600+) and the Qt Visual Studio Tools extension is causing VIsual Studio to hang for up to a minute when building.
I used another instance of Visual Studio to profile the build step and it looks like it is constantly calling HelperFunctions.ProjectsInSolution (up to 50,000 times) inside DteEventsHandler.cs buildEvents_OnBuildDone.
I think by moving the call to HelperFunctions.ProjectsInSolution outside the scope of both loops it would reduce the number of calls significantly. It is impossible for that list of projects to change inside the event handler anyway.
A further improvement would be to cache a list of Qt projects and update it in the ProjectAdded and ProjectRemoved solution events.
Unfortunately, I do not have time to build the extension from scratch at the moment to submit a pull request/patch but I can provide extra information if necessary.