尝试在lldb中继续处理时,Python脚本卡住了

jas*_*inh 5 python llvm lldb

我正在尝试对iOS进行一些研究,它涉及将lldb附加到进程.我能够用lldb控制台做到这一点,但是当我试图将它转换为python脚本时,它第一次停留在"进程继续"并且最终从未到达命令.有人可以帮忙吗?谢谢!

import lldb
debugger = lldb.SBDebugger.Create()
debugger.SetAsync(False)
debugger.HandleCommand('platform select remote-ios')
debugger.HandleCommand('process connect connect://localhost:1234')
debugger.HandleCommand('process continue')
#other commands
Run Code Online (Sandbox Code Playgroud)

Jim*_*ham 1

您正在同步模式下运行,因此“进程继续”不会返回,直到进程因某种原因停止为止。你没有设置任何断点,所以除了崩溃之外,没有什么可以让它停止。

如果您希望在进程运行时更好地控制其处理,您可能需要尝试修改以下位置的事件处理示例:

http://llvm.org/svn/llvm-project/lldb/trunk/examples/python/process_events.py

达到您的目的。