• iOS.Debug.LLDB1


    0. lldb的帮助

    (lldb) help 

    显示lldb的命令

    (lldb) help command

    显示某个命令的帮助

    (lldb) help command subcommand

    显示命令的子命令的帮助

    1. 使用lldb的断点(breakpoint)

    1.1 通过在IDE中在每行代码前点击进行添加断点

    1.2 在Console中使用breakpoint命令来设置断点

    在App Run之后,"Debug"->"Pause" 菜单项使App暂停,此时Console出现 "(lldb)" 提示符(如下):

    (lldb) breakpoint set -r "didSelectRow"

    以上语句添加了一个正则表达式断点,为每个含有"didSelectRow"的方法添加一个断点。Ref[3]

    (lldb) help breakpoint set

    该语句可以查看"breakpoint set"的帮助。

    (lldb) breakpoint set -o -r "didSelectRow"

    flag -o: 

      -o ( --one-shot )

                The breakpoint is deleted the first time it causes a stop.

     

    1.3 为属性添加断点

    查看某个属性什么时候被使用,可以直接在下面的这行设置断点。

    @property (assign, nonatomic) CGPoint center;

     

    2. watchpoint  

    A set of commands for operating on watchpoints.

    Ref[9] Ref[1.3]

    watchpoint:观察某个变量的值,当发生对该变量的写操作时,就会停下来。

    (lldb) watchpoint set variable cityId

     

    3. Debug UI 

    3.1 方法recursiveDescription的使用

    Ref[7]

    3.2 lldb

    Ref[6]


    Reference

    1. lldb和GDB命令对照

    1.1 http://lldb.llvm.org/lldb-gdb.html

    1.2 http://lldb.llvm.org/docs.html

    1.3 http://lldb.llvm.org/tutorial.html (ToRead)

    2. WWDC 2012 Session 415 Debugging with LLDB

    3. Navigating and discovering an iOS codebase using lldb

    https://medium.com/ios-os-x-development/navigating-and-discovering-a-code-base-using-lldb-bca7c10115cf

    4. Technical Note TN2239: iOS Debugging Magic (ToRead)

    https://developer.apple.com/library/ios/technotes/tn2239/_index.html#//apple_ref/doc/uid/DTS40010638-CH1-SECTION39%23Intel%2032-Bit

    5. iOS ABI Function Call Guide (ToRead)

    https://developer.apple.com/library/ios/documentation/Xcode/Conceptual/iPhoneOSABIReference/Introduction/Introduction.html

    6. Dancing in the Debugger — A Waltz with LLDB (ReadAgain)

    7. Output view hierarchy in LLDB

    http://shaunseo.com/output-view-hierarchy/

    http://jeffreysambells.com/2013/01/24/debugging-layouts-with-recursive-view-descriptions-in-xcode

    http://stackoverflow.com/questions/5150186/how-do-i-inspect-the-view-hierarchy-in-ios

    Debug Area Help

    https://developer.apple.com/library/ios/recipes/xcode_help-debugger/using_view_debugger/using_view_debugger.html

    8. Debugging: A Case Study (AAAAA)  (ToRead)

    http://www.objc.io/issue-19/debugging-case-study.html

    9. How do I have a breakpoint get triggered if an instance variable in the class has its value changed?

    (未完待续)

    10. More than po: Debugging in LLDB (AAAA+) (ToRead)

    https://www.slideshare.net/micheletitolo/more-than-po-debugging-in-lldb-78570000

  • 相关阅读:
    1154 Vertex Coloring (25 分)
    7-4 Replacement Selection (30 分)
    7-3 Safari Park (25 分)
    7-2 The Judger (25 分)
    7-1 Prime Day (20 分)
    1101 Quick Sort (25 分)
    1093 Count PAT's (25 分)
    1128 N Queens Puzzle (20 分)
    N皇后问题
    1038 Recover the Smallest Number (30 分)
  • 原文地址:https://www.cnblogs.com/cwgk/p/2694185.html
Copyright © 2020-2023  润新知