加入收藏 | 设为首页 | 会员中心 | 我要投稿 衡阳站长网 (https://www.0734zz.cn/)- 数据集成、设备管理、备份、数据加密、智能搜索!
当前位置: 首页 > 站长资讯 > 评论 > 正文

iOS常用调试方法:LLDB命令

发布时间:2019-04-27 17:55:22 所属栏目:评论 来源:360技术
导读:在iOS项目开发过程中,常用到静态分析(Analyze)、断点(BreakPoint)和控制台(Console)进行代码调试。本篇文章介绍Xcode常用调试方法之LLDB命令。 本文来自360奇舞团QiShare团队投稿。 相关阅读: 《iOS 常用调试方法:静态分析》 《iOS 常用调试方法:断点

想比较于breakpoint是对方法生效的断点,watchpoint则是对地址生效的断点。watchpoint类似于KVO的工作原理,当观察到属性地址里面的东西改变时,就让程序中断,其语法为:watchpoint []。其应用场景示例如下:

  1. (lldb) watchpoint set variable string 
  2. Watchpoint created: Watchpoint 1: addr = 0x7ffeef497360 size = 8 state = enabled type = w 
  3.     declare @ '/Users/huangxianshuai/Desktop/Products/QiShare/QiDebugDemo/QiDebugDemo/QiConsoleViewController.m:33' 
  4.     watchpoint spec = 'string' 
  5.     new value: 0x00000001007670b8 
  6.  
  7. (lldb) next 
  8.  
  9. Watchpoint 1 hit: 
  10. old value: 0x00000001007670b8 
  11. new value: 0x0000000100767138 
  12.  
  13. (lldb) image lookup -a 0x00000001007670b8 
  14.       Address: QiDebugDemo[0x00000001000040b8] (QiDebugDemo.__DATA.__cfstring + 32) 
  15.       Summary: @"QiShare" 
  16. (lldb) image lookup -a 0x0000000100767138 
  17.       Address: QiDebugDemo[0x0000000100004138] (QiDebugDemo.__DATA.__cfstring + 160) 
  18.       Summary: @"huang" 

image lookup -a 是 image lookup -address 的简写,可以查看参数地址的内容。

8. 总结

文章仅列举了作者平常使用到的一些LLDB命令,这些命令的确能提高调试效率。而更多的LLDB命令可以从LLDB Homepage(http://lldb.llvm.org/)或者其他网络资源中获取。

【本文是51CTO专栏机构360技术的原创文章,微信公众号“360技术( id: qihoo_tech)”】

戳这里,看该作者更多好文

(编辑:衡阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读