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