Go(lang):如何使用 PPROF 堆配置文件来查找内存泄漏?
Posted
技术标签:
【中文标题】Go(lang):如何使用 PPROF 堆配置文件来查找内存泄漏?【英文标题】:Go(lang): How to use PPROF heap profile to find memory leaks? 【发布时间】:2013-09-29 17:01:36 【问题描述】:我正在尝试使用 pprof 来验证内存泄漏。
任何人都可以解释如何阅读您在以下位置找到的堆配置文件:
http://localhost:6060/debug/pprof/heap?debug=1
另外,在启动go tool pprof http://localhost:6060/debug/pprof/heap
之后输入web
命令会产生一个空的.svg 文件是否正常?
非常感谢
【问题讨论】:
【参考方案1】:我可以帮助解决第二个问题。您必须向命令提供二进制文件的名称:
go tool pprof YOUR_COMPILED_BINARY http://localhost:6060/debug/pprof/heap
【讨论】:
【参考方案2】:如何读取堆配置文件解释得很好in this intel blogpost:
每个条目开头的数字(“1:262144 [4:376832]”)代表当前活动对象的数量,活动对象占用的内存量,分配的总数和所有分配的内存量,分别。
【讨论】:
英特尔网站似乎并不关心cool URIs,所以这里有一个archive link。以上是关于Go(lang):如何使用 PPROF 堆配置文件来查找内存泄漏?的主要内容,如果未能解决你的问题,请参考以下文章
Golang使用pprof和qcachegrind进行性能监控
`go tool pprof` 报告错误`unrecognized profile format`