我们要加入对pprof包里的方法调用,程序才能将运行时候程序的堆内存分配状态记录到文件(也可以是写到其他地方,例如网络等)中,以便进一步的分析.

如果你的go程序只是一个应用程序,比如计算fabonacci数列,那么你就不能使用net/http/pprof包了,你就需要使用到runtime/pprof。具体做法就是用到pprof.StartCPUProfile和pprof.StopCPUProfile。(Go语言的pprof是Google C++ profiler的移植.)

比如下面的例子:

1: 
   2: import (
   7: )
   8:  
)
  10:  
  11: func main() {
  12:  
  13:     flag.Parse()
 {
  15:         f, err := os.Create(*cpuprofile)
if err != nil {
  17:             fmt.Println(err)
  18:         }
  19:         pprof.StartCPUProfile(f)
  20:         defer pprof.StopCPUProfile()
  21:     }
// ...
  23: }

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-10-08
  • 2021-07-15
  • 2021-05-24
  • 2022-01-04
  • 2021-06-19
猜你喜欢
  • 2021-10-29
  • 2022-12-23
  • 2022-12-23
  • 2021-08-04
  • 2021-12-18
  • 2021-11-15
相关资源
相似解决方案