我想在我的Go程序中添加命令行标志来启用/禁用cpu和内存分析.使用pprof.StartCPUProfile()显式启用CPU分析.但是未明确启用内存分析.你只需在退出时调用pprof.WriteHeapProfile().如果我从不进行这些调用,是否存在与任何一种分析形式相关的运行时成本?如果没有,这是否意味着内存分析基本上始终开启?
MemProfileRate默认为非零,但它设置的速率足够低,不应影响大多数程序.默认情况下它是打开的,这样如果一个程序的内存开始出现气球,就会有一些数据可以在不重新编译的情况下找到问题.
在go1.5中会有一个新GODEBUG标志memprofilerate,因此可以通过环境变量进行更改.设置memprofilerate=0将禁用内存分析.http://tip.golang.org/pkg/runtime/
| 归档时间: |
|
| 查看次数: |
306 次 |
| 最近记录: |