前言
内存泄漏是我们在生产环境中必须面临的问题,现在我们来讲解一下go内存泄漏查找方式-runtime/trace包
通过代码快速学习怎么使用
1.使用runtime/trace包放在mian函数里
package main
import (
"os"
"runtime/trace"
)
func main() {
f, _ := os.Create("trace.out")
defer f.Close()
trace.Start(f)
defer trace.Stop()
}
2.运行语句
go run mian.go
此时在当前目录会生成一个trace.out文件
3.使用go tool trace工具
运行以下语句:
go tool trace trace.out
运行结果如下则成功
4.浏览器看板
4.通过面板可以查看各种数据指标
如点击view trace
Minimum mutator utilization
总结
测试内存泄露的工具很多,go工具trace是官方提供比较常用的,通过案例是不是学会了呢。