app vsync 请求
最终会调用到ViewRootImpl的invalidate()来请求下一个VSync
// 通过Choreographer请求下一个VSync,详见1.3
mChoreographer.postCallback(
Choreographer.CALLBACK_TRAVERSAL, mTraversalRunnable, null);
status_t DisplayEventReceiver::requestNextVsync() {
通过SurfaceFlinger的binder接口createDisplayEventConnection拿到一个binder对象,除了返回binder对象,还返回了BitTube一侧的读写fd,后续端侧就可以通过这个BitTube和SurfaceFlinger通信,处理VSync相关的通知。
本文为博客笔记,
原文链接:https://blog.youkuaiyun.com/weixin_43833152/article/details/139940649