|
Memory Pool
Create a pool of memory blocks
|
#include <stdlib.h>#include <stdbool.h>

Go to the source code of this file.
Typedefs | |
| typedef struct memory_pool | memory_pool_t |
Functions | |
| memory_pool_t * | memory_pool_init (size_t count, size_t block_size) |
| memory pool initializer More... | |
| bool | memory_pool_destroy (memory_pool_t *mp) |
| void * | memory_pool_acquire (memory_pool_t *mp) |
| memory pool pop function More... | |
| bool | memory_pool_release (memory_pool_t *mp, void *data) |
| memory pool push function More... | |
| size_t | memory_pool_available (memory_pool_t *mp) |
| memory pool availability function More... | |
| void | memory_pool_dump (memory_pool_t *mp) |
| memory pool dump function More... | |
| typedef struct memory_pool memory_pool_t |
Definition at line 23 of file memory_pool.h.
| void* memory_pool_acquire | ( | memory_pool_t * | mp | ) |
memory pool pop function
| mp | a pointer to a memory pool object |
Definition at line 214 of file memory_pool.c.
| size_t memory_pool_available | ( | memory_pool_t * | mp | ) |
memory pool availability function
| mp | a pointer to a memory pool object |
Definition at line 293 of file memory_pool.c.
| bool memory_pool_destroy | ( | memory_pool_t * | mp | ) |
Definition at line 154 of file memory_pool.c.
| void memory_pool_dump | ( | memory_pool_t * | mp | ) |
memory pool dump function
| mp | a pointer to a memory pool object |
Iterates through all free data blocks in memory pool, printing metadata about each to user.
Definition at line 310 of file memory_pool.c.
| memory_pool_t* memory_pool_init | ( | size_t | count, |
| size_t | block_size | ||
| ) |
memory pool initializer
| count | number of nodes (headers) in pool |
| block_size | size of each data block pointed to by nodes |
Allocates one memory pool struct and count number of memory pool block and header combinations. Also allocates memory for count number of pointers in shadow pointer array.
out of memory
Definition at line 90 of file memory_pool.c.
| bool memory_pool_release | ( | memory_pool_t * | mp, |
| void * | data | ||
| ) |
memory pool push function
| mp | a pointer to a memory pool object |
| data | a pointer to a data block with attached header |
Definition at line 253 of file memory_pool.c.
1.8.13