goland调试有两个问题?

goland调试有两个问题?

1. 为什么一下启了这么多个g?

http://img1.sycdn.imooc.com//climg/60d1d84409de21dd10241304.jpg


2.如果我给runtime/proc.go打个断点, goland debug后hang住不动, 不知道为什么?

http://img1.sycdn.imooc.com//climg/60d1d912092621bc21381386.jpg




正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
Xargin 2021-06-22 21:54:18

可以切换 goroutine 来看栈,我观察了一下除了 main 以外,其它几个分别是:


runtime.forcegchelper,每两分钟检查是不是已经进行过 gc,如果未进行过,主动触发

runtime.bgsweep,后台清扫 goroutine

runtime.bgscavenge,后台归还内存的 goroutine

runtime.runfinq,这个应该是用来运行那些 finalizer 的 goroutine


这个 hang 住我也不太清楚。。。。断点是打在什么地方了。。

  • 提问者 落笔锋 #1

    打在了这里.

    http://img1.sycdn.imooc.com//climg/60d1ec51091b4a1f15760914.jpg

    我发现runtime下有些函数不让打断点? 只能用dlv来b. 不知道为何

    2021-06-22 21:58:24
  • Xargin 回复 提问者 落笔锋 #2

    按道理来说 goland 用的就是 dlv 的。。

    2021-06-22 22:16:20
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师