近期有些网友想要了解performselector实现原理的相关情况,小编通过整理给您分析,同时介绍一下详解performselector应用场景有关信息。RunLoop学习起来是很抽象,也不好理解,所以一定多看几次,多学学才能学好!这也是中
近期有些网友想要了解performselector实现原理的相关情况,小编通过整理给您分析,同时介绍一下详解performselector应用场景有关信息。
RunLoop 学习起来是很抽象,也不好理解,所以一定多看几次,多学学才能学好!这也是中高级 iOS 必须掌握的知识点,面试中经常遇到
什么是 RunLoop?
Run 表示运行,Loop 表示循环。结合在一起就是运行循环的意思。RunLoop 就是在程序运行过程中循环做一些事情.
RunLoop 的应用范畴有哪些?
定时器 (Timer)、PerformSelector
GCD Async Main Queue
事件响应、手势识别、界面刷新
网络请求
AutoreieasePool
上面这些底层都是 RunLoop 在支撑,说白了,如果没有 RunLoop 支撑,上面的这些都无法实现。
如果没有 RunLoop 会发生什么呢?像我们的命令行项目,创建出来默认就是没有 RunLoop,请看下图
而我们 iOS 项目的 main 函数里面都有 UIApplicationMain(argc, argv, nil, appDelegateClassName);这个代码,这里就是创建了一个主线程的 RunLoop,所以我们程序不会退出,一直在运行中。我们可以大致写一下 main 函数里面的伪代码如下:
本站部分文章来自网络或用户投稿,如无特殊说明或标注,均为本站原创发布。涉及资源下载的,本站旨在共享仅供大家学习与参考,如您想商用请获取官网版权,如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。