使用StopWatch或类似方法对代码进行基准测试

时间:2012-04-06 19:34:44

标签: go benchmarking

我正在尝试使用Go包“time”来对我的程序中的函数进行基准测试。一直在寻找,人们似乎都在使用time.NanoSeconds() - 但我觉得这个功能不再在时间包中了?

我需要的是一种简单的方法来启动和停止计时器,并打印出值。

1 个答案:

答案 0 :(得分:9)

使用* _test.go中的testing包的现有功能:

func BenchmarkMyFunc(b *testing.B) {
    for i := 0; i < b.N; i++ {
        myBecnhmarkedFunction()
    }
}

并通常在包/工具目录中调用go test -bench RE(RE是用于选择B,因为它意味着*B*的长凳的正则表达式

或明确地从代码中的任何位置 - 使用Benchmark函数。