【GoLand教程】GoLand Go 核心转储文件

有时在调试程序时,您需要检查代码执行流程并了解程序的当前状态。Go 核心转储是一个文件,其中包含正在运行的进程的内存转储及其在程序生命周期中的状态。您可以在程序完成执行或仍在运行时调试核心转储。
您只能在 Linux 机器上创建 Go 核心转储文件。但是您可以在任何支持 GoLand 的操作系统上查看转储文件。
在 Linux 上创建 Go 核心转储文件
- 在包含文件的目录中打开一个终端。
- 将
ulimit
参数设置为unlimited
:ulimit -c unlimited
。 go build .
通过在终端中运行来构建程序。该build
命令在当前项目文件夹中创建一个二进制文件(例如awesomeProject)。- 要创建核心转储文件,请运行
GOTRACEBACK=crash ./<binary_file_name>
(例如,GOTRACEBACK=crash ./awesomeProject
)。此命令在当前项目文件夹中创建一个核心文件。
查看转储日志
- 导航到运行 | 打开核心转储。
- 在Executable字段中,指定二进制文件的路径(例如awesomeProject)。
- 在核心转储字段中,指定
core
文件的路径(例如core)。 - 单击确定。在调试工具窗口中,选择要检查的帧。
在 GoLand 中查看 Go 核心转储
- 打开或创建 Go 文件的 Go Build 配置。
- 在环境字段中,单击文件夹 (
)。
- 在“环境变量”对话框中,单击“添加”图标 (
)。
- 单击名称字段并键入
GOTRACEBACK
。 - 单击值字段并键入
crash
。 - 保存所有更改并单击OK。
- 运行程序Shift+F10。程序的输出显示在调试器窗口中。