ios卡顿监控
2020-09-25 本文已影响0人
凯文Kevin21
一般认为卡顿主要指主线程卡顿。针对 UI 卡顿或者说主线程卡顿可以有多种监控方案:
1、利用
CADisplayLink
来监控刷新的帧率,计算在 1s 内屏幕刷新的次数。一般认为 50fps 以上会不卡顿
2、利用 runLoop。创建 runLoop 的一个观察者
,并添加到主线程 runLoop 的 common 模式下。创建一个保持存活的子线程,监控主 runLoop 的状态,如果停留在 kCFRunLoopBeforeSources 状态或 kCFRunLoopAfterWaiting 状态,在设置的时间阈值内一直没有变化,即可判定为卡顿。
- 监控到卡顿之后可以追踪堆栈信息,以便查找问题,解决问题。