Golang delve,如何启动调试器并启动正在调试的应用程序?

2024-05-05

我正在尝试设置一个可以远程连接的无头深度调试器。

我无法找到一种方法来启动调试服务器,而该服务器不会暂停我正在调试的应用程序。

我一直在使用dlv attach --headless=true --listen=:2345 attach 32但这会暂停该过程。
或者我可以使用dlv --headless=true --listen=:2345 exec app如果这允许应用程序二进制文件运行。

我不知道是否init文件可以做这样的事情吗?我找不到任何有关其实际情况的文档。


如果你考虑深入研究第 145 期 https://github.com/derekparker/delve/issues/245,这可能是一个功能,而不是一个错误:

我看不到在不暂停的情况下启动实际调试会话的价值,除非您只是简单地依赖于提供init文件(加载断点/跟踪点),然后想要立即继续执行,您可以通过在文件末尾写入 continue 命令来完成init file.

您已经可以设置跟踪点,而无需无限期地停止程序trace子命令,它带有 pid 标志。


话虽这么说,与深入研究1.3.0 https://github.com/go-delve/delve/blob/master/CHANGELOG.md#130-2019-08-27(2019 年 8 月,2 年后):

深入研究/深入研究问题 245 https://github.com/go-delve/delve/issues/245解决的是PR 1585 https://github.com/go-delve/delve/pull/1585

cmd/dlv: add --continue继续启动/附加过程

Add --continue选项attach, debug, exec, and trace,发出一个continue开始时。

此功能的主要用例是启动无头探索服务器(例如在容器内)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Golang delve,如何启动调试器并启动正在调试的应用程序? 的相关文章

随机推荐