0

我试图在互联网上找到这两个循环之间的区别,但我没有找到。我已经阅读了一些他们以相同方式解释的文章。有人问我它们之间有什么区别,我已经说过文章中有什么。面试官说两者不一样。所以请帮我看看有什么区别。任何形式的帮助表示赞赏。

4

3 回答 3

3

运行循环(NSRunLoopCFRunLoop)是一个事件循环。应用程序的主线程运行一个运行循环;这是应用程序的主要事件循环。大多数应用程序没有另一个运行循环(至少作为 iOS SDK 的用户您看不到)。

如果面试官认为 iOS 上的事件循环和运行循环之间存在差异,你将不得不问他们是什么意思,因为根据 Apple 的文档,它们是同一个东西。

https://developer.apple.com/library/ios/documentation/General/Conceptual/Devpedia-CocoaApp/MainEventLoop.html

于 2015-12-29T02:27:22.317 回答
0

对于每个应用程序,它应该只有一个位于主线程内的主事件循环。

我不确定面试官认为应用程序的运行循环是什么。但run loop其实是一个与线程绑定的概念。Each NSThread object, including the application’s main thread, has an NSRunLoop object automatically created for it as needed.https://developer.apple.com/library/ios/documentation/Cocoa/Reference/Foundation/Classes/NSRunLoop_Class/index.html#//apple_ref/doc/uid/TP40003725中说

于 2015-12-29T03:04:31.807 回答
0

我猜主运行循环是一种事件循环。

https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/TheAppLifeCycle/TheAppLifeCycle.html中有两个图 (图2-1和图2-2)

图 2-1 显示事件循环是作为控制器一部分运行的一些循环,图 2-2 显示主运行循环是 iOS 用来管理事件的循环。

对不起,我的英语不好。

于 2016-03-26T11:35:31.643 回答