iphone - 如何在 Xcode 中设置线程特定断点?

标签 iphone multithreading cocoa-touch xcode breakpoints

我正在调试非主线程使用 UIKit 绘图方法时发生的崩溃。我想在 -[UIView layoutSubviews] 上设置一个条件断点,只有在非主线程中执行时才会触发。这可能吗?

最佳答案

您可以使用 gdb 控制台设置每个线程断点。例如:

b -[UIView layoutSubviews] thread 2

(您可以使用 gdb“infothreads”命令来查看存在哪些线程以及 gdb 对它们使用什么标识符)。

我认为没有办法为除主线程(线程 1)之外的每个线程设置断点,但是如果您有合理数量的线程,则可以为每个线程设置断点如有必要,请单独进行。

<小时/>

更新:

如果由于 GCD,每个线程的问题无法解决,您可以采取的另一种方法是设置一个常规断点,并为该断点设置 gdb 命令以转储回溯(“where”)并然后“继续”。

关于iphone - 如何在 Xcode 中设置线程特定断点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4386355/

相关文章:

objective-c - 通过segue传递数据

ios - 以编程方式自定义 TableViewCell

iphone - UIView 子类不会自动调整大小

公共(public)数据表的 C# SQL 查询

c# - 使用未知大小队列的网络爬虫的生产者/消费者

cocoa-touch - Restkit,使用 loadObjectsAtResourcePath 发送发布数据

ios - 从 UIWebView 中删除渐变背景?

iphone - 我如何在 iphone 中以相同的方法加载不同的 View

java - 在线程之间共享数据 - 原子引用或同步

iphone - 根据打印输出从 NSDictionary 访问信息