198
社区成员
发帖
与我相关
我的任务
分享延续上面两篇文章
Go语言的单元测试会使用吗?
Go语言的基准测试会使用吗?
对于一些操作,我们想测试其占用内存的情况,如下:
func Benchmark_Alloc(b *testing.B) {
for i := 0; i < b.N; i++ {
fmt.Sprintf("%d ", i)
}
}
C:\Users\Tony\xxx>go test -v -bench=Alloc -benchmem xxx_test.go
goos: windows
goarch: amd64
cpu: Intel(R) Core(TM) i5-7500 CPU @ 3.40GHz
Benchmark_Alloc
Benchmark_Alloc-4 11920632 97.68 ns/op 17 B/op 1 allocs/op
PASS
ok command-line-arguments 1.510s
计算次数:11920632,每次操作耗时97.68 ns,然后就是每次操作需要占17个字节
同样的在vscode里面,直接点击 run benchmark | debug benchmark 即可,如下图:

有什么疑问欢迎提出,一起学习进步,努力成为go技术达人!