Helper-Klasse für Leistungstests mit der StopWatch-Klasse

7

In diesem Beispielcode verwende ich eine einfache Stoppuhr, um die Zeit zu testen, die benötigt wird, um eine bestimmte Aufgabe / Aktion zu beenden

%Vor%

Ich möchte eine Klasse haben, die ich instanziieren werde, um sie mit Tests zu verwenden

%Vor%

Wenn ich jedoch die Klasse instanziiere und versuche, SW1 zu verwenden, kann ich ihre Methoden nicht verwenden. Was mache ich falsch?

%Vor%

Aktualisieren

Für den Rest der Antworten, kopieren Sie nicht den Code von mir, da ich vermisste stopwatch vermisse. Anstatt die Stoppuhrklasse zu instantiieren, habe ich aus Versehen nicht darauf geachtet, dass Visual Studio fragt, ob ich eine Klasse für meine so genannte Stoppuhr anstelle von .NETs echtem Stopwatch erstellen möchte.

Also mein Rat, achten Sie auf die vorgeschlagenen Aktionen von Visual Studio intellisense obwohl es die ganze Zeit gleich sein sollte. Stellen Sie nur sicher, bis Sie wirklich erfahren sind und alle Klassen auswendig können.

    
LoneXcoder 03.12.2012, 10:49
quelle

3 Antworten

19

Hier ist eine einfache Klasse, die Ihnen helfen kann, die Zeit der Code-Block-Ausführung zu messen:

%Vor%

Verwendung (Code-Block mit der Verwendung von PerformanceTester umbrechen):

%Vor%

Wenn Sie die Tester-Variable vor using block deklarieren, stoppt die Stoppuhr automatisch beim Beenden von using block und die Ergebnisse stehen Ihnen zur Verfügung:

%Vor%

Wenn Sie die Rückrufaktion an PerformanceTester übergeben, wird diese Aktion am Ende der using -Anweisung aufgerufen, und die verstrichene Zeit wird an den Rückruf übergeben:

%Vor%

Sie können eine Methode deklarieren, die TimeSpan akzeptiert und Ergebnisse verarbeitet:

%Vor%

Die Nutzung wird sehr sauber:

%Vor%     
Sergey Berezovskiy 03.12.2012, 11:01
quelle
1

mache sie öffentlich statt privat:

%Vor%     
gkmiec 03.12.2012 11:00
quelle
0

Sofern Sie keine benutzerdefinierte Klasse verwenden, ist StopWatch nicht der richtige Klassenname. Stoppuhr unter dem Namespace System.Diagnostics

Versuchen Sie:

%Vor%     
heads5150 03.12.2012 11:01
quelle

Tags und Links