2010-04-20 6 views
5

Ich bin konfrontiert mit einem großen alten Stapel von Methodenaufrufen in einigen Legacy-Code, von denen einer oder einige einen Engpass schafft und wirklich Dinge verlangsamt. Gibt es einen schnellen Weg, um einen Bericht darüber zu erhalten, welche Methodenaufrufe die Zeit brauchen, im Debugging nicht ausgeführt werden, durchgehen und sehen, wo der Cursor pausiert?Finde langsame/ineffeziente Methodenaufrufe in dotnet

Antwort

3

Versuchen Eqatec

+0

zu testen. Interessant - ich bin noch nie auf dieses Konto gestoßen. Ich werde es versuchen und sehen, wie es mit dotTrace vergleicht ... –

+0

Okay, ich bin schon etwas durch die Tatsache, dass sie behaupten, es ist kostenlos auf der Download-Seite - aber dann lesen Sie weiter und finden Sie heraus, dass es ist eine kostenlose 30-Tage-Bewertung. –

+0

@Jon, ihre Freie Lizenz ist für nichtkommerzielle Projekte. Bei kommerziellen Projekten sollte der Benutzer eine persönliche Lizenz erwerben. –

11

Verwenden Sie einen Profiler. Ich persönlich benutze JetBrains dotTrace, aber das liegt hauptsächlich daran, dass ich eine kostenlose Lizenz als MVP bekommen habe. Es gibt auch andere Werkzeuge wie RedGate's ANTS. Ich habe den ANTS selbst nicht benutzt.

Es gibt eine free profiler from Microsoft, die .NET 2.0 zielt; Ich erwarte, dass es auch mit .NET 3.0 und 3.5 funktionieren würde, aber möglicherweise nicht mit .NET 4, da es eine neue CLR gibt. Meine eigene Erfahrung damit ist, dass es etwas begrenzt ist, aber immer noch nützlich sein kann.

+0

+1 für JetBrains dotTrace, ich liebe es :) – Cocowalla

+0

+1. Ich habe ANTS schon mal probiert (Testversion) und bin damit gut zurecht gekommen. Ich weiß nicht, wie es mit dotTrace verglichen wird, aber es könnte sich lohnen, beide – AdaTheDev