Go에서 밀리초 정밀도로 함수 런타임 계산
Go에서는 함수의 런타임을 측정하고 해당 기간을 밀리초 단위로 반환하는 것이 간단해졌습니다. 지연된 기능의 힘 덕분입니다. 수행 방법은 다음과 같습니다.
Go 1.x 이상의 경우 다음 유틸리티 함수를 정의합니다.
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)) }
그런 다음 함수 시간을 측정하려면 un() 함수를 연기하기만 하면 됩니다. 함수 시작 부분에 적절한 문자열을 추가합니다:
func someFunction() { defer un(trace("SOME_ARBITRARY_STRING_SO_YOU_CAN_KEEP_TRACK")) // Do your stuff ... }
이 함수를 실행하면 시작을 나타내는 간결한 로그 메시지를 받게 됩니다. 경과 시간(초)과 함께 기능이 종료됩니다.
이 방법은 로깅 오버헤드로 인해 매우 정확한 타이밍에 적합하지는 않지만 대부분의 경우 효과적이고 편리한 접근 방식이라는 점을 명심하세요. 사용 사례. Go의 연기 기술을 사용하면 함수 시간을 쉽게 측정하고 실행 시간을 추적할 수 있습니다.
위 내용은 밀리초 정밀도로 Go에서 함수 런타임을 어떻게 측정할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!