首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
RunLoop
订阅
师大小海腾
更多收藏集
微信扫码分享
微信
新浪微博
QQ
5篇文章 · 2订阅
深入浅出 RunLoop(三):事件循环机制
前面我们介绍了RunLoop的基本概念以及相关数据结构,这篇我们来讲解一下RunLoop到底是怎么工作的。 首先我们来看一下主线程的RunLoop的启动过程。 前面我们说过,我们的 iOS 程序能保持持续运行的原因就是在main()函数中调用了UIApplicationMain…
深入浅出 RunLoop(二):数据结构
如果 Mode 里没有任何Source0/Source1/Timer/Observer,RunLoop会立马退出。 比如NSDefaultRunLoopMode默认模式和UITrackingRunLoopMode滚动模式,滚动屏幕的时候就会切换到滚动模式,就不用去处理默认模式下…
深入浅出 RunLoop(一):初识
RunLoop不是一个简单的do...while循环,它涉及到用户态和内核态之间的切换。 没有消息需要处理时,休眠线程以避免资源占用。从用户态切换到内核态,等待消息; 通过调用mach_msg()函数来转移当前线程的控制权给内核态/用户态。 如果没有RunLoop,main()…
深入浅出 RunLoop(五):RunLoop 与 NSTimer
如果我们在子线程上使用NSTimer,就必须开启子线程的RunLoop,否则定时器无法生效。 问题:由前面的文章我们知道,RunLoop同一时间只能运行在一种模式下,当我们滑动tableview/scrollview的时候RunLoop会切换到UITrackingRunLoop…
深入浅出 RunLoop(四):RunLoop 与线程
苹果官方文档中,RunLoop的相关介绍写在线程编程指南中,可见RunLoop和线程的关系不一般。Threading Programming Guide(苹果官方文档) 主线程的RunLoop对象是在UIApplicationMain中通过[NSRunLoop currentR…