iOS开发 - 在状态栏显示FPS,CPU和内存信息


原理

FPS的计算

CoreAnimation有一个很好用的类CADisplayLink,这个类会在每一帧绘制之前调用,并且可以获取时间戳。于是,我们只要统计出,在1s内的帧数即可。

- (void)envokeDisplayLink:(CADisplayLink *)displayLink{
    if (_lastTimestamp == -1) { _lastTimestamp = displayLink.timestamp; return; } _countPerFrame ++; NSTimeInterval interval = displayLink.timestamp - _lastTimestamp; if (interval < 1) { return; } _lastTimestamp = displayLink.timestamp; CGFloat fps = _countPerFrame / interval; //... }

内存和CPU信息的获取

CPU和内存的获取采用了mach头文件中的方法,调用了底层API,采用C方式来获取。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM