ios卡顿监控

一般认为卡顿主要指主线程卡顿。针对 UI 卡顿或者说主线程卡顿可以有多种监控方案:

1、利用 CADisplayLink 来监控刷新的帧率,计算在 1s 内屏幕刷新的次数。一般认为 50fps 以上会不卡顿
2、利用 runLoop。创建 runLoop 的一个观察者,并添加到主线程 runLoop 的 common 模式下。创建一个保持存活的子线程,监控主 runLoop 的状态,如果停留在 kCFRunLoopBeforeSources 状态或 kCFRunLoopAfterWaiting 状态,在设置的时间阈值内一直没有变化,即可判定为卡顿。

  • 监控到卡顿之后可以追踪堆栈信息,以便查找问题,解决问题。

你可能感兴趣的:(ios卡顿监控)