1 回答
TA贡献1821条经验 获得超4个赞
您可以将配置文件输出路径更改为当前工作目录,
profile.ProfilePath(path)
如果您无法检索任何样本,则意味着您的样本量MemProfileRate不够小,无法实际捕获微小的变化。
如果您分配的内存量较少,则将其设置MemProfileRate为较小的值,如果您分配的内存量较大,则保持默认值即可。如果你认为你捕获了微小的内存变化,那么增加MemProfileRate.
profile.MemProfileRate(100)
使用profilepackage 时你不应该忘记的一件事是你的电话应该被推迟。
defer profile.Start(xxx).Stop()
这是完整的程序。
package main
import (
"os"
"github.com/pkg/profile"
)
func main() {
dir, _ := os.Getwd()
defer profile.Start(profile.MemProfile, profile.MemProfileRate(100), profile.ProfilePath(dir)).Stop()
//decrease mem profile rate for capturing more samples
for i := 0; i < 10000; i++ {
tmp := make([]byte, 100000)
tmp[0] = tmp[1] << 0 //fake workload
}
}
您还可以设置配置文件路径,以便在当前工作目录中输出配置文件。
- 1 回答
- 0 关注
- 94 浏览
添加回答
举报