美文网首页锻炼吃饭的家伙
10、如何利用RunLoop原理去监控卡顿?

10、如何利用RunLoop原理去监控卡顿?

作者: 玉思盈蝶 | 来源:发表于2020-02-10 15:15 被阅读0次

导致卡顿问题的几种原因:

复杂 UI 、图文混排的绘制量过大;
在主线程上做网络同步请求;
在主线程做大量的 IO 操作;
运算量过大,CPU 持续高占用;
死锁和主子线程抢锁。

RunLoop原理:

对于 iOS 开发来说,监控卡顿就是要去找到主线程上都做了哪些事儿。我们都知道,线程的消息事件是依赖于 NSRunLoop 的,所以从 NSRunLoop 入手,就可以知道主线程上都调用了哪些方法。我们通过监听 NSRunLoop 的状态,就能够发现调用方法是否执行时间过长,从而判断出是否会出现卡顿。
所以,我推荐的监控卡顿的方案是:通过监控 RunLoop 的状态来判断是否会出现卡顿。

PS:表示这节看不懂啊,虽然工作也遇到这个问题了,呜呜呜~~~

相关文章

网友评论

    本文标题:10、如何利用RunLoop原理去监控卡顿?

    本文链接:https://www.haomeiwen.com/subject/tivaxhtx.html