Runloop

好长时间了, 继续总结一下

1. 现在我们有一个持续的异步任务需要执行,这时候我们会创建一个独立的生命周期可控的线程,而Runloop就是控制线程的生命周期并接受事件进行处理的循环机制。换句话讲:Runloop就是iOS事件响应与任务处理最核心的循环机制。

2. runloop的加入 提高了响应效率,流畅,节约设备资源省电,该做事的时候做事,该休息的时候休息,保持程序的持续运行

3.Runloop 在主线程上面 不需要我们创建 自动会生成, 有没有注意 程序的入口函数 Main函数,里面有 Return 如下图

main函数

程序正常开启 永远不会走到 return 是否知道为什么?  Runloop可以帮你解释:如果没有 RunLoop 程序一运行就结束了,根本不可能看到持续运行的 app

4 Runloop并不是线程安全,所以需要避免其他线程调用当前线程的Runloop,Runloop也负责管理Autoreleasepool 负责处理消息事件 即 输入源事件 计时器事件 

5 会持续更新 时间不允许了, 下次重新整理思路 继续总结 望理解

你可能感兴趣的:(Runloop)