Unterschied zwischen ElapsedTicks, ElapsedMilliseconds, Elapsed.Milliseconds und Elapsed.TotalMilliseconds? (C #)
Bin Total verwirrt zwischen diesen 4. Was ist der Unterschied zwischen ElapsedMilliseconds (lang), ElapsedTicks (lang), Verstrichen ist.TotalMilliseconds (doppelt) und diese fruchtlos Verstrichen ist.Millisekunden (int)?
Habe ich eine Funktion
{
Stopwatch sw = new Stopwatch();
sw.Start();
MyTimeConsumingAction();
sw.Stop();
sw.//what?
}
Wie bekomme ich die richtige Zeit verbraucht, die von lang andauernden Prozess von der elapsed-Eigenschaft des Stoppuhr-Objekt in Millisekunden?
Edit: ich habe versucht, msdn-Dokumentation, aber es ist nichts detailliertes da..
InformationsquelleAutor der Frage nawfal | 2012-01-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
z.B. einer Stoppuhr gestoppt 1.23456 Sekunden zurückkehren würde 1234.56 in dieser Eigenschaft. Sehen TimeSpan.TotalMilliseconds auf MSDN
z.B. eine Stoppuhr in 1.234 Sekunden zurückkehren würde, 234 in dieser Eigenschaft. Sehen TimeSpan.ElapsedMilliseconds
Im Kontext der ursprünglichen Frage, in Bezug auf die Stopwatch-Klasse, ElapsedTicks ist die Anzahl der ticks abgelaufen sind. Zecken treten bei der rate der Stoppuhr.Frequenz, also, zu berechnen, Sekunden verstrichen, berechnen: numSeconds = Stoppuhr.ElapsedTicks /Stoppuhr.Frequenz.
Die alte Antwort definiert Zecken als die Anzahl der 100-Nanosekunden-Fristen, die richtig ist im Zusammenhang mit der DateTime-Klasse, aber nicht richtig im Zusammenhang mit der Stopwatch-Klasse. Sehen Stoppuhr.ElapsedTicks auf der MSDN-Website.
Verstrichen ist.TotalMilliseconds ist ein double zurückgeben kann Ausführungszeiten, die teilweise Millisekunde, während ElapsedMilliseconds ist Int64. z.B. eine Stoppuhr zur 0.0007 Millisekunden return 0 , oder 1234.56 Millisekunden zurück, die 1234 in dieser Eigenschaft. So für Präzision verwenden Sie immer Vergangen.TotalMilliseconds.
Sehen Stoppuhr.ElapsedMilliseconds auf der MSDN-Website für die Klarstellung.
Beste Grüße,
InformationsquelleAutor der Antwort Dr. ABT
Spiegelt die Stopwatch-Klasse zeigt, dass ElapsedMilliseconds ist Verstrichenen ticks umgewandelt (und gerundet) Millisekunden:
InformationsquelleAutor der Antwort granaker
in einer kurzen Erklärung, die von msdn:
Dieser Eigenschaft repräsentiert die abgelaufene Zeit, abgerundet auf die nächste ganze Millisekunde Wert. Für höhere Präzision-Messungen, verwenden Sie die Verstrichene oder die ElapsedTicks Eigenschaften.
Diese Eigenschaft gibt die Anzahl der verstrichenen ticks in der zugrunde liegenden timer-Mechanismus. Ein tick ist die kleinste Zeiteinheit, die von der Stoppuhr Messen können. Mit der Frequenz-Feld zu konvertieren, ElapsedTicks Wert in eine Anzahl von Sekunden.
Verwenden Sie die Elapsed-Eigenschaft zum abrufen der verstrichenen Zeit TimeSpan-Wert mit Methoden und Eigenschaften. Zum Beispiel können Sie das format der zurückgegebenen TimeSpan-Instanz in eine text-Darstellung, oder übergeben Sie es an eine andere Klasse und erfordert einen TimeSpan-parameter.
InformationsquelleAutor der Antwort Gustavo F
Elapsed
istTimeSpan
. Wenn Sie anzeigen möchten, dann nurElapsed.ToString()
tun sollte,InformationsquelleAutor der Antwort Reniuz