Ich habe eine Anwendung, die ein bestimmtes Ereignis überwacht und dann beginnt, Dinge zu berechnen, sobald es passiert. Event sind unregelmäßig und können von Bündeln in einer Sekunde zu keinem für lange Zeit in einem beliebigen Muster kommen ..C# Leistungszähler Timer100Ns. Wie man?
I %% die Zeit die Anwendung ausgelastet ist (ähnlich CPU% Verbrauch)
messen wollen ich möchte
Zwei Fragen Timer100Ns
Zähler verwenden:
Muss ich es durch Hardware erhöhen Zecken oder von Datetime Zecken (zB wenn ich Stoppuhr verwenden - verwende ich sw.ElapsedTicks oder sw.Elapsed.Ti cks)?
Benötige ich einen Basiszähler?
so bin ich über so etwas schreiben:
Stopwatch sw = new Stopwatch();
sw.Start();
// Do some operation which is irregular by nature
sw.Stop();
// Measure utilization of the application
myCounterOfTypeTimer100Ns.IncrementBy(sw.Elapsed.Ticks);
Wird es tun?
EDIT: Ich experimentierte mit ihm ein bisschen und jetzt ist es noch verwirrender .. Es zeigt tatsächlich die Werte, die ich es inkrementieren. Nicht %%.
nichts Interessantes in dieser Klasse. es ist nur ein Inhaber eines Feldes, das PerformanceCounter vom Typ Timer100Ns ist. Die MSDN sagt: 'Ein Prozentzähler, der die aktive Zeit einer Komponente als Prozentsatz der gesamten verstrichenen Zeit des Abtastintervalls anzeigt. '.. Vielleicht gibt es andere Wege. Aber ich würde gerne herausfinden, wie man das benutzt. –
Moment mal - was hat es mit einem Multi-Counter zu tun? ein Multi-Counter benötigt, wenn Sie mehrere Metriken gleichzeitig verfolgen .. völlig zufällige Informationen .. –