2019独角兽企业重金招聘Python工程师标准>>>

前言

今天在用Instruments分析App的时候,总感觉看起来不太直观。到Github上找了找,发现几乎都是只显示FPS的,而且效果也不是我想要的。于是就自己写了个

源码地址

  • LHPerformanceStatusBar

效果

字体颜色会根据阈值进行颜色变化,性能差的时候字体会变成红色,性能一般的时候会变成橘黄色,阈值可配。

集成

CocoaPod集成

pod LHPerformanceStatusBar
  • 1

使用

- (void)viewDidAppear:(BOOL)animated{[super viewDidAppear:animated];[LHPerformanceMonitorService run];
}
  • 1
  • 2
  • 3
  • 4

原理

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方式来获取。

  • LHPerformanceUtil

转载于:https://my.oschina.net/mexiaobai1315/blog/1570918

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

  1. ubuntu系统中查看本机cpu和内存信息的命令和用法(分色排版)

    https://zhidao.baidu.com/question/192966322.html 写出ubuntu linux系统中查看本机cpu和内存信息的命令和用法,以及如何解读这些命令 ubun ...

  2. Android获取cpu和内存信息、网址的代码

    android获取手机cpu并判断是单核还是多核 /**  * Gets the number of cores available in this device, across all proces ...

  3. linux中查看cpu和内存的命令,Linux系统如何查看cpu和内存信息

    Linux系统,其实并不是很多人都在使用,所以很多人第一次接触这个系统,很多操作都不会,下面就让学习啦小编教大家Linux系统如何查看cpu和内存信息吧. Linux系统查看cpu和内存信息的方法 右 ...

  4. python查看物理内存和交换区的统计信息_使用python获取CPU和内存信息的思路与实现(linux系统)...

    linux里一切皆为文件,在linux/unix的根文件夹下,有个/proc文件夹,这个/proc 是一种内核和内核模块用来向进程(process)发送信息的机制(所以叫做"/proc&qu ...

  5. 使用python获取CPU和内存信息的思路与实现(linux系统)

    From: http://blog.csdn.net/preterhuman_peak/article/details/40649229 linux里一切皆为文件,在linux/unix的根目录下,有 ...

  6. python读取linux内存_使用python获取CPU和内存信息(linux系统)

    大家都知道,linux里一切皆为文件,在linux/unix的根目录下,有个/proc目录,这个/proc 是一种内核和内核模块用来向进程(process)发送信息的机制(所以叫做"/pro ...

  7. 查看服务器虚拟化、CPU、内存信息

    1.虚拟化信息查看         windows10系统我们可以使用任务管理器进行查看,打开任务管理器,找到性能页,右下角虚拟化显示:已启用就是开启了虚拟化功能 linux系统通过命令dmesg | ...

  8. 查看虚拟机服务器内存,查看服务器虚拟化、CPU、内存信息

    1.虚拟化信息查看 windows10系统我们可以使用任务管理器进行查看,打开任务管理器,找到性能页,右下角虚拟化显示:已启用就是开启了虚拟化功能 linux系统通过命令dmesg |grep kvm ...

  9. windows linux C/C++获取操作系统、CPU、内存信息、硬盘、IP和MAC

    Windows 操作系统和内存信息在windows下通过系统的API来获取,CPU信息则需要需要通过底层CPUID指令取得 代码: #include <iostream> #include ...

最新文章

  1. C++ JsonCpp 使用(含源码下载)
  2. pip安装更新、第三方库对应的python解释器版本、pip安装第三方库,压缩包离线安装,pycharm快捷安装及pycharm中terminal的使用,timeout超时报错
  3. Raft 集群成员变更、日志压缩、客户端交互
  4. 报道 | AI 2000 人工智能全球最具影响力学者榜单:美国领跑,中国第二,德国第三...
  5. OpenCV与gcc和CMake一起使用
  6. java刘保_[SSH] Eclipse+Struts2的简单应用
  7. 【指标需求思考】如何做好指标类需求建设
  8. sql管理:索引超出范围必须为非负值并小于集合大小_java面试基础知识-数据库基础知识(数据库索引部分)...
  9. sql 整改措施 注入_SQL注入入侵防范措施
  10. mysql 参数调整_mysql需要调整的参数-阿里云开发者社区
  11. 项目管理修炼之道之估算工作
  12. 【vs调试】PDB 文件:每个开发人员都必须知道的
  13. 夜间灯光数据下载(DMSP/OLS,NPP/VIIRS、珞珈一号网址)
  14. cmake的安装与基本使用
  15. 最大化参数 火车头_新手必看的火车头采集器使用入门教程_图文解说版!(看完包会)...
  16. html表单 多行输入文字,如何在HTML中创建多行文本输入(文本区域)?
  17. Mybatis-Plus实现乐观锁配置
  18. IDEA开发工具调试技巧(极大提升开发效率)
  19. 《Activiti 深入BPM工作流》--- 什么是activiti的Service, 如何创建?
  20. c语言 error c1004,c++中出现fatal error C1004: 发现意外的文件尾的错误怎么解决啊

热门文章

  1. DHCP服务、NFS、vsftp服务的简单搭建
  2. 综述:全国软考首遭试卷丢失 20万考生措手不及
  3. aspx页面中文汉字显示为乱码
  4. 是什么构成了“人工智能”热潮?
  5. Centos 6 系统镜像光盘做YUM源
  6. PHP Object对象转换为Array数组
  7. 安卓开发12:安卓各种事件操作
  8. (九)企业分布式微服务云SpringCloud SpringBoot mybatis-服务链路追踪(Spring Cloud Sleuth)...
  9. 与Flutter第一次亲密接触-Android 视角
  10. Linux shell 字符串转数字进行运算符操作