正所谓窥一斑而知全豹,由于整个图形子系统过于庞大,直接啃代码不知从何下手,所以我希望通过观察Demo中一个具体图像帧的整个生命周期可以一窥整个Android系统的图形系统的工作流程以及工作模式。
?...vsync,对于Android系统而言,此信号将会驱动图形生产的逻辑代码在CPU上运行,而工作过程中CPU偏向于收集应用的绘制意图,收集完成后将指令一通刷到GPU中,GPU则是将这些指令再次展开执行,将一帧新的图像渲染到后缓冲区中...而作为首篇文章,要跟踪的流程自然是应用如何发出首帧绘制请求的.毕竟有了vsync,我们应用的图形生产代码才会工作起来.
根据跟踪代码绘制的时序图:
?...mEventConnection->stealReceiveChannel(mDataChannel.get());
}
}
}
initialize
那APP进程内如何接收这些数据呢...通信管道建立好了,事件监听的工作也安排妥当了,如此一来我们就可以在事件到来时及时处理了,这样FrameDisplayEventReceiver的初始化流程就结束了。