iOS开发笔记iOS程序猿

iOS 常用 LLDB 指令

2020-03-05  本文已影响0人  Charlin丶

一、指令的格式

<command> [<subcommand> [<subcommand>...]] <action> [-options [option- value]] [argument [argument...]]

比如给 test 函数设置断点
breakpoint set -n test

二、指令

1. help (查看指令的用法)

比如 help breakpoint、help breakpoint set

2. expression -- (执行一个表达式)

比如 expression self.view.backgroundColor = [UIColor redColor]

3. thread backtrace (打印线程的堆栈信息)

4. thread return [] (让函数直接返回某个值,不会执行断点后面的代码)

比如 thread return [self test]

5. frame variable (打印当前栈帧的变量)

比如 frame variable self->_age

6. thread continue、continue、c (程序继续运行)

7. thread step-out、finish (直接执行完当前函数的所有代码,返回到上一个函数)

8. thread step-over、next、n (单步运行,把子函数当做整体一步执行)

9. thread step-in、step、s (单步运行,遇到子函数会进入子函数)

10. thread step-inst-over、nexti、ni (单步运行,把子函数当做整体一步执行)

11. thread step-inst、stepi、si (单步运行,遇到子函数会进入子函数)

si、nis、n 类似
s、n 是源码级别
si、ni 是汇编指令级别

12. breakpoint set (设置断点)

13. breakpoint list (列出所有的断点,每个断点都有自己的编号)

14. breakpoint disable 断点编号 (禁用断点)

15. breakpoint enable 断点编号 (启用断点)

16. breakpoint delete 断点编号 (删除断点)

17. breakpoint command add 断点编号

18. breakpoint command list 断点编号

19. breakpoint command delete 断点编号

20. 内存断点, 在内存数据发生改变的时候触发(与代码断点差不多)

比如 watchpoint set variable self->age

比如 watchpoint set expression &(self->_age)

21. image lookup

22. image list (列出所加载的模块信息)

小技巧

比如 breakpoint list 可以缩写成 br l

上一篇下一篇

猜你喜欢

热点阅读