Goで関数の時間を計測し、その実行時間をミリ秒単位で返すにはどうすればよいですか?
Gotesting
パッケージを使用して、関数のベンチマークを行います。例えば、
package main
import (
"fmt"
"testing"
)
// the function to be benchmarked
func Function(n int) int64 {
n64 := int64(n)
return n64 * n64
}
func BenchmarkFunction(b *testing.B) {
n := 42
for i := 0; i < b.N; i++ {
_ = Function(n)
}
}
func main() {
br := testing.Benchmark(BenchmarkFunction)
fmt.Println(br)
}
出力:
500000000 4.22 ns/op
Go gotestコマンドを使用して、ベンチマークを実行することもできます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加