runloop简单理解

CFRunLoopMode
RunLoop在同一时段只能且必须在一种特定Mode下Run
更换Mode时, 需要暂停当前的Loop,然后重启新的Loop

NSDefalutRunLoopMode      默认状态.空闲状态
UITrackingRunLoopMode     滑动ScrollView
NSRunLoopCommonModes     默认包括上面第一和第二

实例:添加timer给当前runloop时,如果选择NSDefalutRunLoopMode模式,则滑动界面时,timer停止运行,不滑动时运行;如果选择UITrackingRunLoopMode,则滑动时timer也能运行,不滑动时反而不运行。
如果是选择NSRunLoopCommonModes时,包括前两种情况,都运行。

CFRunLoopObserver
监听runloop,不能使用传统的kvo方式监听runloop。

需要使用CF类添加runloop监听,在btn点击时唤醒runloop,点击完runloop休眠。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容