Android(安卓)GraphicBuffer
16lz
2022-05-22
1. Android中的应用层每申请一个Surface,最终会通过jni和binder调用到surfaceflinger中,最终会创建一个Layerxxx(Layer,LayerBuffer,LayerBlur,LayerDim)类,最通常的是Layer类,在Layer类中有一个成员变量:
sp<GraphicBuffer> mBuffers[NUM_BUFFERS];
Layer的成员函数SetBuffers()初始化了该数组:
for (size_t i=0 ; i<NUM_BUFFERS ; i++) {
mBuffers[i] = new GraphicBuffer();
}
其中,NUM_BUFFERS的定义是2,也就是说,android为每个Layer分配了两个显示缓冲,以便于做出PageFlip的动作。
2. GraphicBuffer作为显示内存的管理类,负责显示内存的申请和释放。
更多相关文章
- 调用C++底层 Thread & Mutex 的注意事项
- Android中onInterceptTouchEvent与onTouchEvent
- Android调用测试
- Android(安卓)ActionBar中的按钮添加旋转动画
- 一个不错的启动菜单显示屏动画效果
- Android开发便签9:在android资源文件中定义字符串数组
- Android(安卓)JsBridge 源码解析
- Android(安卓)中 ListView Adapter getView 被多次调用问题 解决
- 【Android】ToolBar设置NavigationIcon不显示异常或自定义失败异