ns_calloc, ns_free, ns_malloc, ns_realloc
Memory allocation functions
- Provided by: aolserver4-dev (Version: 4.5.1-18)
- Source: aolserver4
- Report a bug
Memory allocation functions
#include "ns.h" void * ns_calloc(size_t num, size_t esize) void ns_free(void *ptr) void * ns_malloc(size_t size) void * ns_realloc(void *ptr, size_t size)
The AOLserver memory storage allocation code was moved into Tcl core beginning with Tcl 8.4.0. Starting with AOLserver 3.5, these memory allocation functions are wrappers that call Tcl_Alloc and Tcl_Free. Earlier versions of AOLserver used this fast memory storage allocator internally, or the platform's memory allocator depending on how you configured it.
The actual amount of memory allocated or freed will be different from the requested amount. This is because the fast memory allocation code pools memory into chunks and manages that memory internally. In addition, the Tcl distribution may be compiled to allocate even more memory which is used internally for diagnostic reasons. Using ns_free to free memory created by routines other than ns_malloc, ns_realloc and ns_calloc will almost certainly result in segmentation faults or undefined behavior.
The lowercase and mixed-case versions are identical; the lowercase versions are preferred.
memory, allocation