繁体   English   中英

主事件循环和应用程序的运行循环有什么区别?

[英]What's the difference between main event loop and app's run loop?

我试图找到互联网上这两个循环之间的区别,但没有找到任何区别。 我读过一些文章,它们以相同的方式解释。 有人问我它们之间有什么区别,我说过在那儿。 采访者说两者都不一样。 所以请帮我有什么区别。 任何帮助都将受到赞赏。

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

如果采访者认为iOS上的事件循环和运行循环之间存在差异,则必须询问他们的含义,因为根据Apple的文档,它们是同一回事。

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

对于每个应用程序,它应仅在主线程内具有一个主事件循环。

我不确定面试官认为应用程序的运行循环是什么。 但是运行循环实际上是与线程绑定的概念。 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中

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

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

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

对不起,我的英语不好。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM