赞
踩
在上一篇文章中介绍 GraphicBuffer 初始化的 initWithSize() 函数中,有两个核心方法,GraphicBufferAllocator.allocate 和 GraphicBufferMapper. getTransportSize,这里我们就来看一下 allocate() 函数是如何实现内存申请的。
在Android的图形子系统中,GraphicBufferAllocator 和 GraphicBufferMapper 是处理图形缓冲区的核心组件。这两个类分别负责缓冲区的分配和映射,是 GraphicBuffer 类的基础,GraphicBuffer 用于封装和管理图形数据。
GraphicBufferAllocator 的 allocate 方法用于从系统中申请一块内存,这块内存将被用作图形缓冲区。这个方法通常在需要创建一个新的图形缓冲区时调用,例如,当一个应用程序需要显示一帧图像或视频帧时。
通常,GraphicBufferAllocator.allocate 会在创建新的 GraphicBuffer 时调用。
源码位置:/frameworks/native/libs/ui/GraphicBufferAllocator.cpp
- status_t GraphicBufferAllocator::allocate(uint32_t width, uint32_t height, PixelFormat format,
- uint32_t lay
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。