【发布时间】:2019-02-15 15:18:29
【问题描述】:
我发现我的进程在没有业务请求时使用高 cpu
我用go-torch发现runtime.timeproc大部分cpu都浪费了
我认为这一定是因为time.NewTicker在某处泄漏(不停止),或者在 for 循环中创建代码
那么我如何使用任何工具找到它
事实上,我已经搜索过它,并且一直关注defer ticker.Stop()
【问题讨论】:
-
您能否在stackoverflow.com/help/mcve 之后添加一个最小且完整的示例?否则你的问题真的很难回答
-
我怀疑ticker(或时间pkg)导致CPU负载。但是,如果您不停止(回收它们所依赖的通道),代码可能会泄漏内存。请参阅示例here。