Ort*_*ntz 5 iphone xcode multithreading cocoa-touch breakpoints
我正在调试崩溃,其中非主线程使用UIKit绘图方法.我想在-[UIView layoutSubviews]只有触发器上设置一个条件断点,如果它在非主线程中执行的话.这可能吗?
您可以使用 gdb 控制台设置每个线程断点。例如:
b -[UIView layoutSubviews] thread 2
Run Code Online (Sandbox Code Playgroud)
(您可以使用 gdb“infothreads”命令来查看存在哪些线程以及 gdb 对它们使用什么标识符)。
我认为没有办法为除主线程(线程 1)之外的每个线程设置断点,但如果您有合理数量的线程,则可以在必要时为每个线程单独设置断点。
更新:
如果由于 GCD,每个线程的问题无法解决,您可以采取的另一种方法是设置一个常规断点,并为该断点设置 gdb 命令以转储回溯(“where”),然后“继续” ”。