Class BufferPool
- Namespace
- easyar
BufferPool implements a memory pool that can be used for functions like custom camera access that need to repeatedly allocate memory of the same size, reducing memory allocation time.
BufferPool
Constructors
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)
Parameters
block_sizeInt32capacityInt32
Methods
block_size
the number of bytes for each 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()
Returns
- Int32
capacity
the maximum number of 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()
Returns
- Int32
size
the current number of externally obtained 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()
Returns
- Int32
tryAcquire
Try to obtain a memory block. If the current number of externally obtained Buffer does not reach the maximum number of Buffer, take out or allocate a new Buffer, otherwise return empty.
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()
Returns
- Optional<Buffer>