我编写了一个核心数据抽象类,它保存持久存储、对象模型和对象上下文。为了使多线程更容易,我编写了对象上下文的访问器,以便它通过使用 [NSThread currentThread]
来识别线程,返回仅可用于当前线程的实例。
只要我不使用 GCD,它就可以完美工作,我想用 GCD 来替代旧的 NSThread。所以我的问题是,如何识别 GCD 线程?这个问题适用于 iOS 和 Mac OS X,但我猜这两个平台都是一样的。
最佳答案
您可以检查dispatch_get_current_queue()是否返回任何内容。我喜欢 Jeremy 的想法,即使用队列的上下文存储转换为 CD-context-per-queue 模型,而不是 CD-context-per-thread 模型。
关于objective-c - 识别GCD线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5181828/