LLDB调试断点增加条件

在一些重复性的UI控件的界面时(比如tableView),根据数据源加载了很多个控件,这时个别控件出现了意料之外的情况,如果在控件代码内部断点,则会走过断点很多次,不方便确认位置,这时可以根据数据源去增加断点的执行限定条件 然后断在该方法的某一次执行中

talk is cheap ,show me the code

Xcode可以在右侧控制栏创建断点

创建断点

选择Symbolic Breakpoint


创建一个断点

先写个类

//类objcA

@interface objcA :NSObject

@property (nonatomic, assign) NSInteger count;

@end

再写个方法

//类ViewController

- (void)xxxWithobjc:(objcA *)objc{

    NSLog(@"do something here");

}

右键编辑(注意是方法对应的那个断点 ,不是下面的子断点)

编辑断点

symbol是符号,也就是符号断点,写法就像例子那样"-[ViewController xxxWithobjc:]",加减号是说明类型(类方法,实例方法)

添加条件和事件

这里写的条件是参数objc的属性count为1时执行断点,断点会断在方法一开时的地方,

ignore是忽略前n次不执行断点,优先级在condition之上

module是限定在某个模块内

Action是添加事件,有log shell sound等

完成

run一下,然后大声喊出那句话

运行

这样就可以给断点的触发增加现在条件,提升了debug的效率

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容