我有一个用 golang 编写的进程,它作为守护进程运行。
几天后,它在没有明显原因的情况下停止生产。我认为这可能是内部僵局。如果我做一个strace -p <PID>我可以看到这条线
strace -p <PID>
futex(0x9aaba0, FUTEX_WAIT, 0, NULL
显然这个电话永远不会结束。我想使用已经运行的进程(因为我不知道如何/何时再次触发错误)来调试问题。
如何查看正在运行的 goroutine 以及它们的位置?我如何从进程中转储可能对调试问题有用的任何其他信息?
繁星点点滴滴
相关分类