visual-studio-code - 使用 lldb 在 VS Code 中进行调试,如何在没有源代码的符号上设置断点?
问题描述
我有某种内存管理错误,当然,在 100% 负载下每 3 天左右随机发生一次。这是在 OSX 上,但都是简单的、可移植的 C++11:
code(12404,0x70000aace000) malloc: *** error for object 0x105088e00: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
Abort trap: 6
我正在使用 Visual Studio Code,调试器是 lldb;我不知道 - 如何 - 在 malloc_error_break 上设置断点,这样我就可以在调用堆栈发生时查看它。
VS Code 允许您在源代码行设置断点,但我没有该系统库代码的源代码,只有符号。但是,如果我可以在那里中断,无论没有该函数的源代码,我都可以检查调用堆栈。
那么,如何在没有源代码的任意符号处在 OSX High Sierra 上的 Visual Studio Code 下的 lldb 中设置断点?
谢谢!
解决方案
如果你去Debug->New Breakpoint->Function Breakpoint,你可以通过输入函数名(malloc_error_break)来添加这个断点。
推荐阅读
- javascript - 无法让数据列表在所有浏览器中自动完成。此外,它仅适用于 MS edge 中所需的“startswith”模式
- ios - iOS 13 场景对 iPhone 有什么影响?
- android - 自动单击警报对话框按钮
- python - 如何通过 API 从 DocuSign 提取新员工信息?
- android - 如何按日期删除表值以与 RoomData Base 中的当前日期进行比较?
- mysql - Wso2 与 azure 中的 Mysql 连接(SSL 连接)
- php - 查找数组中记录的唯一和重复
- java - 在main方法中,为什么可以调用同一个类的构造函数呢?
- javascript - 在组件重新加载时未调用 React componentDidMount
- php - 需要 MVC 的分页脚本