美文网首页锻炼吃饭的家伙
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