Funktionslaufzeit in Go mit Millisekundengenauigkeit berechnen
In Go ist es ganz einfach, die Laufzeit einer Funktion zu messen und ihre Dauer in Millisekunden zurückzugeben dank der Leistungsfähigkeit verzögerter Funktionen. So können Sie es machen:
Definieren Sie für Go 1.x und höher die folgenden Hilfsfunktionen:
func trace(s string) (string, time.Time) { log.Println("START:", s) return s, time.Now() } func un(s string, startTime time.Time) { endTime := time.Now() log.Println(" END:", s, "Elapsed Time in seconds:", endTime.Sub(startTime)) }
Um dann eine Funktion zeitlich festzulegen, verschieben Sie einfach die un()-Funktion mit einer entsprechenden Zeichenfolge am Anfang der Funktion:
func someFunction() { defer un(trace("SOME_ARBITRARY_STRING_SO_YOU_CAN_KEEP_TRACK")) // Do your stuff ... }
Wenn Sie diese Funktion ausführen, erhalten Sie kurze Protokollmeldungen, die den Start und das Ende der Funktion angeben mit der verstrichenen Zeit in Sekunden.
Bedenken Sie, dass diese Methode aufgrund des Protokollierungsaufwands zwar nicht für eine extrem genaue Zeitmessung geeignet ist, für die meisten Anwendungsfälle jedoch ein effektiver und bequemer Ansatz ist. Mit der Verzögerungstechnik von Go ist es ein Kinderspiel, Funktionen zu timen und ihre Ausführungszeiten zu verfolgen.
Das obige ist der detaillierte Inhalt vonWie kann ich die Funktionslaufzeit in Go mit Millisekundengenauigkeit messen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!