iOS 性能优化

1.界面卡顿原因

(1)图像显示的原理:收到一个Vsync信号 ,系统就会利用CADisplayLink通知系统。CPU计算好显示的内容(视图的创建、布局计算、图片解码、文本绘制),然后提交给GPU进行(变换、合成、渲染),GPU提交给帧缓存区。等待下一个信号出现显示到屏幕

(2)界面卡顿:如果第一个Vsync信号的过程中,CPU或者GPU没有完成内容提交,则那一帧就会被丢弃。这样界面上没有及时替换,出现了丢帧,界面卡顿。

2.CPU与GUP

(1)CPU:加载资源,对象创建,对象调整,对象销毁,布局计算,Autolayout,文本计算,文本渲染,图片的解码, 图像的绘制(Core Graphics)

(2)GPU是一个专门为图形高并发计算而量身定做的处理单元,比CPU使用更少的电来完成工作并且GPU的浮点计算能力要超出CPU很多。

3.图像显示的缓存机制(双缓冲机制)

(1)GPU会预先渲染好一帧放入一个缓冲区内(前帧缓存)

(2)下一帧渲染好后,GPU会直接把视频控制器的指针指向第二个缓冲器(后帧缓存)

(3)再切下一帧   最开始的前帧缓存变成了后帧缓存。交替切换。

你可能感兴趣的:(iOS 性能优化)