Stopwatch.Frequency Feld
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft die Frequenz des Timers als Anzahl von Ticks pro Sekunde ab. Dieses Feld ist schreibgeschützt.
public: static initonly long Frequency;
public static readonly long Frequency;
staticval mutable Frequency : int64
Public Shared ReadOnly Frequency As Long
Feldwert
Beispiele
Das folgende Beispiel zeigt die Häufigkeit und Auflösung eines Stopwatch Timers an. Dieses Codebeispiel ist Teil eines größeren Beispiels, das für die Stopwatch-Klasse bereitgestellt wird.
void DisplayTimerProperties()
{
// Display the timer frequency and resolution.
if ( Stopwatch::IsHighResolution )
{
Console::WriteLine( "Operations timed using the system's high-resolution performance counter." );
}
else
{
Console::WriteLine( "Operations timed using the DateTime class." );
}
Int64 frequency = Stopwatch::Frequency;
Console::WriteLine( " Timer frequency in ticks per second = {0}", frequency );
Int64 nanosecPerTick = (1000L * 1000L * 1000L) / frequency;
Console::WriteLine( " Timer is accurate within {0} nanoseconds", nanosecPerTick );
}
public static void DisplayTimerProperties()
{
// Display the timer frequency and resolution.
if (Stopwatch.IsHighResolution)
{
Console.WriteLine("Operations timed using the system's high-resolution performance counter.");
}
else
{
Console.WriteLine("Operations timed using the DateTime class.");
}
long frequency = Stopwatch.Frequency;
Console.WriteLine(" Timer frequency in ticks per second = {0}",
frequency);
long nanosecPerTick = (1000L*1000L*1000L) / frequency;
Console.WriteLine(" Timer is accurate within {0} nanoseconds",
nanosecPerTick);
}
Public Shared Sub DisplayTimerProperties()
' Display the timer frequency and resolution.
If Stopwatch.IsHighResolution Then
Console.WriteLine("Operations timed using the system's high-resolution performance counter.")
Else
Console.WriteLine("Operations timed using the DateTime class.")
End If
Dim frequency As Long = Stopwatch.Frequency
Console.WriteLine(" Timer frequency in ticks per second = {0}", frequency)
Dim nanosecPerTick As Long = 1000000000 / frequency
Console.WriteLine(" Timer is accurate within {0} nanoseconds", nanosecPerTick)
End Sub
Hinweise
Die Timerhäufigkeit gibt die Timergenauigkeit und -auflösung an. Beispielsweise entspricht eine Timerfrequenz von 2 Millionen Ticks pro Sekunde einer Timerauflösung von 500 Nanosekunden pro Tick. Anders ausgedrückt: Da eine Sekunde 1 Milliarde Nanosekunden entspricht, entspricht eine Timerfrequenz von 2 Millionen Ticks pro Sekunde 2 Millionen Ticks pro 1 Milliarde Nanosekunden, was noch weiter auf 1 Tick pro 500 Nanosekunden vereinfacht werden kann.
Der Frequency Wert hängt von der Auflösung des zugrunde liegenden Zeitsteuerungsmechanismus ab. Wenn die installierte Hardware und das Betriebssystem einen hochauflösenden Leistungsindikator unterstützen, spiegelt der Frequency Wert die Häufigkeit dieses Leistungsindikators wider. Andernfalls basiert der Frequency Wert auf der Systemtimerhäufigkeit.
Da die Stopwatch Häufigkeit von der installierten Hardware und dem installierten Betriebssystem abhängt, bleibt der Frequency Wert konstant, während das System ausgeführt wird.