WARNING: The online documentation has moved to https://docs.pjsip.org.
Visit the new documentation at https://docs.pjsip.org:
Detailed DescriptionStack/buffer based pool. This section describes an implementation of memory pool which uses memory allocated from the stack. Application creates this pool by specifying a buffer (which can be allocated from static memory or stack variable), and then use normal pool API to access/use the pool. If the buffer specified during pool creation is a buffer located in the stack, the pool will be invalidated (or implicitly destroyed) when the execution leaves the enclosing block containing the buffer. Note that application must make sure that any objects allocated from this pool (such as mutexes) have been destroyed before the pool gets invalidated. Sample usage: #include <pjlib.h> static void test() { char buffer[500]; pj_pool_t *pool; void *p; pool = pj_pool_create_on_buf("thepool", buffer, sizeof(buffer)); // Use the pool as usual p = pj_pool_alloc(pool, ...); ... // No need to release the pool } int main() { pj_init(); test(); return 0; } Function DocumentationCreate the pool using the specified buffer as the pool's memory. Subsequent allocations made from the pool will use the memory from this buffer. If the buffer specified in the parameter is a buffer located in the stack, the pool will be invalid (or implicitly destroyed) when the execution leaves the enclosing block containing the buffer. Note that application must make sure that any objects allocated from this pool (such as mutexes) have been destroyed before the pool gets invalidated.
Copyright (C) 2006-2009 Teluu Inc. |