go 内存泄漏查找

前言

内存泄漏是我们在生产环境中必须面临的问题,现在我们来讲解一下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文件
go 内存泄漏查找_第1张图片

3.使用go tool trace工具

运行以下语句:

go tool trace trace.out

运行结果如下则成功
go 内存泄漏查找_第2张图片

4.浏览器看板

go 内存泄漏查找_第3张图片

4.通过面板可以查看各种数据指标

如点击view trace
go 内存泄漏查找_第4张图片

Minimum mutator utilization
go 内存泄漏查找_第5张图片

总结

测试内存泄露的工具很多,go工具trace是官方提供比较常用的,通过案例是不是学会了呢。

你可能感兴趣的:(go,golang,go)