在https://golang.org/pkg/testing/中描述了我们可以使用testing.B.RunParallel()函数在并行设置中运行基准测试。我尝试编写简单的测试代码:
func BenchmarkFunctionSome(b *testing.B) {
for i := 0; i < b.N; i++ {
SomeFunction()
}
}
然后我把它改成使用RunParallel()
func BenchmarkFunctionSome(b *testing.B) {
b.RunParallel(func(pb *testing.PB) {
for pb.Next() {
SomeFunction()
}
})
}
并且使用RunParallel()的比第一个基准要慢。
实际上,基准测试中并行设置的含义是什么?如果我使用它为什么会变慢RunParallel()?
九州编程
慕尼黑8549860
相关分类