Golang 性能调试:分析并优化 Go 程序
package main
import (
"fmt"
"runtime/pprof"
"runtime"
"os"
)
func cpuProfile() {
f, err := os.Create("cpu.prof")
if err != nil {
panic(err)
}
pprof.StartCPUProfile(f)
defer pprof.StopCPUProfile()
// 你的代码
for i := 0; i < 10; i++ {
doWork()
}
}
func doWork() {
// 这里是你的计算密集型任务
}
func main() {
cpuProfile()
fmt.Println("CPU profile generated.")
}
这段代码演示了如何在Go程序中启动CPU性能分析,并在完成一些模拟工作后停止分析。结果将被保存到当前目录下的cpu.prof
文件中,以便后续进行查看和分析。在实际应用中,你应该将doWork
函数替换为你的计算密集型任务。
评论已关闭