DumpActiveMemory3tcl
Validated memory allocation interface.
Usage
#include <tcl.h> int Tcl_DumpActiveMemory(fileName) void Tcl_InitMemory(interp) void Tcl_ValidateAllMemory(fileName, line)
Arguments
- Tcl_Interp *interp (in)
-
Tcl interpreter in which to add commands.
- char *fileName (in)
-
For
Tcl_DumpActiveMemory, name of the file to which memory information will be written. ForTcl_ValidateAllMemory, name of the file from which the call is being made (normally__FILE__).
- int line (in)
-
Line number at which the call to
Tcl_ValidateAllMemoryis made (normally__LINE__).
Overview
These functions provide access to Tcl memory debugging information. They are only available when Tcl has been compiled with TCL_MEM_DEBUG defined at compile-time.
Tcl_DumpActiveMemory will output a list of all currently allocated memory to the specified file. The information output for each allocated block of memory is: starting and ending addresses (excluding guard zone), size, source file where ckalloc was called to allocate the block and line number in that file. It is especially useful to call Tcl_DumpActiveMemory after the Tcl interpreter has been deleted.
Tcl_InitMemory adds the Tcl memory command to the interpreter given by interp. It is called by Tcl_Main when Tcl has been compiled with TCL_MEM_DEBUG defined.
Tcl_ValidateAllMemory forces a validation of the guard zones of all currently allocated blocks of memory. Normally validation of a block occurs when its freed, unless full validation is enabled, in which case validation of all blocks occurs when ckalloc and ckfree are called. This function forces the validation to occur at any point.
Keywords
memory, debug
Releases
4 releases since Debian 3.0 (Woody); the text changed 1 time.