Profiler

broetchen

Erfahrenes Mitglied
Hi!

Ich bräuchte einen Profiler um meine C#-Programme zu verfolgen und zu sehen, bei welchen Passagen er wie lange braucht, wie schnell ist, etc.

Kennt jemand einen guten für C#?

mfg broetchen
 
CLR Profiler von Microsoft (ist gratis)
oder NPROF (ich glaub so heißts, bin mir jetzt nicht sicher)

Sind beide etwas gewöhnungsbedürftig, sollten für deine Zwecke aber reichen. Aufwändige Tools kosten halt auch entsprechend, dafür haben die auch eingies an Funktionen, weilweise geht die Skala bis sagenhaft :)
Aber wie gesagt, mit denen kannst schon einiges rausfinden.
 
Ich hab mir den CLR-Profiler mal angesehen, ist abgeschmiert :p

Gibt es einen Profiler, den man in das Visual Studio einbetten kann, damit man im Debug-Modus auch profilieren kann?

mfg broetchen
 
Im Debug-Modus profilen ist .. nun ja ...nicht so die Hölle. Immerhin hast du durch das Debuggen einen Overhead, der sich auf das Ergebnis des Profilers niederschlägt. Profilen von Zeiten etc. kannst damit vergessen. Lediglich Aufrufe etc.

Hast dir NProf angesehen? Ist auch ein freies Tool. Ansonsten wird es mit freien Tools schon wieder eng. Viel gibt es da dann nicht mehr - ausser du willst viel Geld ausgeben.

Warum ist dir der CLR-Profiler eigentlich abgestürzt? Mit welcher .NET Version arbeitet du?
 
Nein, NProf hab ich mich nicht angesehen, kann ich ja auch mal probieren.

Ich hab in meinem Programm eine Passage, die sehr lange dauert, obwohl sie gar nicht so langsam sein dürfte. Jetzt will ich einfach nur wissen, was da so lange dauert, daher der Debug-Modus.

Warum mir der CLR Profiler abstürzt, weiß ich auch nicht.
Ich bin ganz normal auf Profile Application gegangen, hab mein Programm laufen lassen und nach dem Klick auf meinen Beenden-Button, ist der Profiler flöten gegangen.

Ich arbeite mit .Net 1.1 und VS 2003.

mfg broetchen
 
Wenn du eine Zeitmessung machen willst, dann kompiliere eine Release-Version und lade diese. Nur dann bekommst "Echtzeiten". Im Debug-Modus macht das keinen Sinn.
 
NProf geht auch nicht, ich hab nicht die Rechte, die DLL zu registrieren :)

Ich lass es einfach, so wie es ist. Soll ja kein Programm werden, dass den ganzen Tag auf und ab rennt.
 
Zurück