情况:
我的 Go 服务器程序中存在竞争条件问题:
go func() {
i := 1
for {
fmt.Printf("I am alive: %d\n",i)
time.Sleep(1 * time.Second)
i+=1
}
}()
对我的程序进行了大量并行请求后,它完全挂断了,甚至main中的goroutine也不再写任何东西。
问题:
我想消除这个问题。为此,我想panic在这种状态下生成 a并接收所有 goroutine 的堆栈转储。
有没有办法做到这一点?
繁花不似锦
尚方宝剑之说
相关分类