使用 KVO 可能会拖慢启动速度
问题

在某一次启动速度优化中,发现最开始的某个 runLoop 中,一个runLoop 耗时很长。发现一个 KVO 变量的初始化消耗了13ms之久,这对启动速度是不可接受了。
源码分析
用 Instrument 看第一次耗时,发现调用了 method_exchange,可能是 KVO的内部实现。
看 RunTime源码,这个方法会清空所有缓存中的方法列表,比较耗时。


posted on 2019-08-31 23:32 花老???? 阅读(255) 评论(0) 编辑 收藏