CADisplayLink会在每次刷新屏幕的时候,执行Delegate,从而计算出FPS,检测CPU的卡顿。
注意,需要加入到RunLoop中:
1 | #import <SpriteKit/SpriteKit.h> |
运行结果如下:
1 | FPS::59 |
单独使用CADisplayLink,只能检测CPU的FPS,对于GPU长时间进行视图混合造成的卡顿,无法检测,因此引入一个空像素点的SKView, 当GPU出现卡顿时,依然会触发CADisplayLink回调。
1 | SKScene *scene = [SKScene new]; |