You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在LLDB中捕获C++异常并自动打印调用栈后继续执行

解决LLDB自动捕获C++异常并打印调用栈后继续执行的问题

你可以通过给C++异常断点绑定自动执行的命令来实现需求,具体操作有两种方式:

方式一:创建断点时直接绑定命令

直接在创建C++异常断点的同时指定触发时要执行的命令:

break set -E C++ -C "bt; continue"

这个命令会创建捕获所有C++异常的断点,每次触发时自动执行bt打印当前线程调用栈,随后执行continue让程序继续运行。

方式二:给已存在的断点添加命令

如果已经通过break set -E C++创建了断点,先通过以下命令查看断点ID:

break list

假设输出里该断点的ID是1,再给这个断点添加自动执行的命令:

break command add 1

执行后LLDB会进入命令编辑模式,依次输入:

bt
continue

输入完成后按下Ctrl+D(macOS/Linux)或Ctrl+Z(Windows)结束编辑即可。

这样设置后,后续程序触发C++异常断点时,会自动完成调用栈打印并继续执行,无需手动干预。

内容的提问来源于stack exchange,提问作者osxUser

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 20:35:16