GCD主队列是不是必须在主线程上执行?

Posted

技术标签:

【中文标题】GCD主队列是不是必须在主线程上执行?【英文标题】:Does GCD main queue must have to be performed on the main thread?GCD主队列是否必须在主线程上执行? 【发布时间】:2015-10-04 22:40:07 【问题描述】:

我只是好奇是否有使用不同的线程而不是主队列的主线程?

谢谢,

【问题讨论】:

【参考方案1】:

主队列的重点是让它在主线程 - UI 线程上运行。

所以不,没有办法在主线程之外的任何其他线程上运行主队列。

很好奇 - 为什么要将主队列放在不同的线程上?

【讨论】:

我在想如果我有两个主线程:sys主线程和anther主线程,比如rmaddy的主线程,这样我可以同时运行两个UI。 无法完成。有一个主线程/主队列。所有 UI 代码都在一个主线程上完成。【参考方案2】:

这在 ios 上不太适用,但在 OS X 上,如果您编写的程序不是应用程序并且不运行主线程的运行循环,您可以调用其他线程 @987654321 @ 并且该线程将托管主队列。很少需要这样做。

【讨论】:

很好,你真的很博学!

以上是关于GCD主队列是不是必须在主线程上执行?的主要内容,如果未能解决你的问题,请参考以下文章

GCD 全局队列任务在主线程上运行

dispatch

ios 将一个函数在主线程执行的4种方法

为啥 NSManagedObjectContext 队列在主线程上执行?

iOS--关于GCD的一些疑惑

伟大的GCD和NSOperationQueue