Class BufferPool
- Пространство имен
- easyar
BufferPool реализует пул памяти. Он может использоваться для функций, которые многократно выделяют память одинакового размера, например для пользовательского доступа к камере, уменьшая время выделения памяти.
BufferPool
Конструкторы
BufferPool
void easyar_BufferPool__ctor(int block_size, int capacity, easyar_BufferPool * * Return)
BufferPool(int block_size, int capacity)
public BufferPool(int block_size, int capacity)
constructor(block_size: Int, capacity: Int)
+ (easyar_BufferPool *) create:(int)block_size capacity:(int)capacity
public convenience init(_ block_size: Int32, _ capacity: Int32)
public BufferPool(int block_size, int capacity)
Параметры
| Имя | Тип | Описание |
|---|---|---|
| block_size | Int32 | |
| capacity | Int32 |
Методы
block_size
Размер в байтах каждого Buffer.
int easyar_BufferPool_block_size(const easyar_BufferPool * This)
int block_size()
public int block_size()
fun block_size(): Int
- (int)block_size
public func block_size() -> Int32
public virtual int block_size()
Возвращаемое значение
| Тип | Описание |
|---|---|
| Int32 |
capacity
Максимальное количество объектов Buffer.
int easyar_BufferPool_capacity(const easyar_BufferPool * This)
int capacity()
public int capacity()
fun capacity(): Int
- (int)capacity
public func capacity() -> Int32
public virtual int capacity()
Возвращаемое значение
| Тип | Описание |
|---|---|
| Int32 |
size
Текущее количество объектов Buffer, полученных извне.
int easyar_BufferPool_size(const easyar_BufferPool * This)
int size()
public int size()
fun size(): Int
- (int)size
public func size() -> Int32
public virtual int size()
Возвращаемое значение
| Тип | Описание |
|---|---|
| Int32 |
tryAcquire
Пытается получить блок памяти. Если текущее количество внешне полученных объектов Buffer не достигло максимального количества объектов Buffer, он извлекает или выделяет новый Buffer; иначе возвращает пустое значение.
void easyar_BufferPool_tryAcquire(easyar_BufferPool * This, easyar_OptionalOfBuffer * Return)
std::optional<std::shared_ptr<Buffer>> tryAcquire()
public @Nullable Buffer tryAcquire()
fun tryAcquire(): Buffer?
- (easyar_Buffer *)tryAcquire
public func tryAcquire() -> Buffer?
public virtual Optional<Buffer> tryAcquire()
Возвращаемое значение
| Тип | Описание |
|---|---|
| Optional<Buffer> |