android 屏幕刷新的一些理解

原文地址:https://www.cnblogs.com/dasusu/p/8311324.html
丢帧介绍:https://www.jianshu.com/p/a769a6028e51
知识点:
1、绘制基本流程:CPU计算屏幕数据->计算好的数据传给CPU,CPU进行图形数据渲染->渲染之后存储到buffer
->然后display(可以理解为屏幕)负责把buffer里面的数据拿出来呈现到屏幕
2、我们常说的android每隔16.6ms 刷新屏幕 可以理解为 display 每隔16.6ms 去buffer里面读取 最新的渲染界面
3、CPU、GPU 计算数据的时机:
第一点:只有界面有变化的需求时,CPU、GPU才能接收到 计算数据的信号
第二点:即使接收到信号,也不会立即进行数据计算,需要等到下一个屏幕刷新的信号来到才会开始计算(display每隔
16.6ms来获取刷新)
4、GPU buffer分为 Frame Buffer 与 Back Buffer
Frame Buffer 用于提供display获取显示的数据
Back Buffer 用于提供存储CPU计算的结果
定期 Frame Buffer 与 Back Buffer 交换数据 如果 到了交换时机 Back Buffer 还是被CPU锁定 会导致交换失败,导致界面显
示不会刷新 导致丢帧

你可能感兴趣的:(android 屏幕刷新的一些理解)