iOS深入原理

iOS Runloop

2021-05-17  本文已影响0人  小和大大

一、什么是runloop?

runloop是通过内部维护的事件循环来对事件/消息进行管理的对象。

二、source0和source1

简单举个例子:一个APP在前台静止着,此时,用户用手指点击了一下APP界面,那么过程就是下面这样的:
我们触摸屏幕,先摸到硬件(屏幕),屏幕表面的事件会被IOKit先包装成Event,通过mach_Port传给正在活跃的APP , Event先告诉source1(mach_port),source1唤醒RunLoop, 然后将事件Event分发给source0,然后由source0来处理。
https://blog.csdn.net/u014600626/article/details/105146577/

三、runloop运行过程

image

四、实际使用

五、线程与runloop

六、怎样保证子线程数据回来更新UI的时候不打断用户滑动操作?

在滑动的时候处于TrackingMode,更新主线程数据刷新设置在defaultMode下

七、autoreleasepool与runloop关系

作者链接:https://www.jianshu.com/p/f9c89ad36f2a

上一篇 下一篇

猜你喜欢

热点阅读