Seit einer Woche sehe ich ein sehr ärgerliches Verhalten von VS2010: Wenn ich ein Projekt debugge und der Debugger an einem Breakpoint anhält, friert Windows fast zehn Sekunden lang ein. Ich sage "Windows friert ein", weil die Maus und die Tastatur während dieser Zeit unbrauchbar sind.
Das Problem tritt nur auf, wenn ich ein bestimmtes Projekt debugge, und ich habe es auf zwei verschiedenen Maschinen mit dem gleichen Ergebnis ausprobiert. Das Projekt ist WPF und ich greife an einer Stelle auf die Tastatur zu (nicht auf die Maus), aber dieser Code wurde seit Monaten nicht mehr geändert, während das Problem erst eine Woche alt ist.
Ich habe kurz vor Beginn dieses Problems Teleriks großes Paket von allem (Testversion) installiert, daher war mein erster Verdacht, dass die VS-Integration von Telerik der Übeltäter war. Ich habe alle Telerik VS-Integrationen deinstalliert (die "JustXXX"-Produkte), aber das Problem bleibt bestehen.
Ich wäre sehr dankbar, wenn jemand einen Hinweis darauf geben könnte, was hier passiert.
Danke
EDIT 1: Ich habe jetzt versucht, eine neue Lösung zu erstellen, alle Projekte darin zu verschieben, aber das Problem bleibt bestehen.
Dann habe ich alles von Telerik deinstalliert, nur um sicherzugehen, aber auch das hatte keine Wirkung.
Der nächste Test bestand darin, die genau gleiche Lösung auf einer anderen Maschine zu laden, und das hat geholfen. Diese Maschine hat keine Drittanbieter-Integrationen mit VS2010, außer reSHarper 6.1.
Ich habe das Problem auch etwas genauer analysiert, und das typische Szenario ist, dass die UI die ersten Male, wenn ein Breakpoint erreicht wird, für ungefähr zehn Sekunden einfriert. Maus/Tastatur reagieren nicht mehr, aber der Cursor blinkt weiter im Code-Editor. Die nächsten Breakpoints machen dasselbe, und oft führt das Wechseln von einer Zeile zur anderen zu einer sehr langen Verzögerung (kein Einfrieren der UI).
Außerdem, wenn der erste Breakpoint sehr früh im Startcode meiner Anwendung gesetzt ist, könnte ich das Problem möglicherweise nicht erleben. Aber wenn ich weiterhin durch den Code schreite, wird der Debugger zunehmend träger, wenn die Anwendung sich selbst initialisiert (in separaten Threads).
Wie bereits erwähnt, tritt dies nur bei einer einzelnen Anwendung auf, also ist der Code offensichtlich irgendwie damit verbunden.
Hat jemand gute Kenntnisse darüber, wie der Debugger arbeitet? Abgesehen von den offensichtlichen Schritten, die immer benötigt werden, wenn ein Breakpoint gesetzt wird oder der Benutzer von einer Zeile zur anderen geht (Aktualisierung des Stapels und der Watch-Fenster), was geschieht im Hintergrund, das alles einfrieren lässt und wie ist das möglich?
Meine letzte Hoffnung ist eine komplette Neuinstallation von VS2010, aber ich hoffe, dass ich dieses Problem lösen kann, bevor diese Option erforderlich ist.