RunLoop和线程的关系?

一、RunLoop和线程的关系:

1.RunLoop 的作用就是来管理线程的,当线程的 RunLoop开启后,线程就会在执行完任务后,处于休眠状态,随时等待接受新的任务,而不是退出。

2.只有主线程的RunLoop是默认开启的,所以程序在开启后,会一直运行,不会退出。其他线程的RunLoop如果需要开启,就手动开启,

二、runloop内部是如何实现的:

1、有一个判断循环的条件,满足条件,就一直循环

2、线程得到唤醒事件被唤醒,事件处理完毕以后,回到睡眠状态,等待下次唤醒

二、runloop的mode作用是什么?:

1.model 主要是用来指定事件在运行循环中的优先级的,分为:

* NSDefaultRunLoopMode(kCFRunLoopDefaultMode):默认,空闲状态

* UITrackingRunLoopMode :ScrollView滑动时

* UIInitializationRunLoopMode  :启动时

* NSRunLoopCommonModes(kCFRunLoopCommonModes):Mode集合

2.苹果公开提供的 Mode有两个:

1. NSDefaultRunLoopMode(kCFRunLoopDefaultMode)

2. NSRunLoopCommonModes(kCFRunLoopCommonModes)

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容