Viewing file: tracemalloc.h (2.14 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
#ifndef Py_TRACEMALLOC_H #define Py_TRACEMALLOC_H
#ifndef Py_LIMITED_API /* Track an allocated memory block in the tracemalloc module. Return 0 on success, return -1 on error (failed to allocate memory to store the trace).
Return -2 if tracemalloc is disabled.
If memory block is already tracked, update the existing trace. */ PyAPI_FUNC(int) PyTraceMalloc_Track( unsigned int domain, uintptr_t ptr, size_t size);
/* Untrack an allocated memory block in the tracemalloc module. Do nothing if the block was not tracked.
Return -2 if tracemalloc is disabled, otherwise return 0. */ PyAPI_FUNC(int) PyTraceMalloc_Untrack( unsigned int domain, uintptr_t ptr);
/* Get the traceback where a memory block was allocated.
Return a tuple of (filename: str, lineno: int) tuples.
Return None if the tracemalloc module is disabled or if the memory block is not tracked by tracemalloc.
Raise an exception and return NULL on error. */ PyAPI_FUNC(PyObject*) _PyTraceMalloc_GetTraceback( unsigned int domain, uintptr_t ptr);
/* Return non-zero if tracemalloc is tracing */ PyAPI_FUNC(int) _PyTraceMalloc_IsTracing(void);
/* Clear the tracemalloc traces */ PyAPI_FUNC(void) _PyTraceMalloc_ClearTraces(void);
/* Clear the tracemalloc traces */ PyAPI_FUNC(PyObject *) _PyTraceMalloc_GetTraces(void);
/* Clear tracemalloc traceback for an object */ PyAPI_FUNC(PyObject *) _PyTraceMalloc_GetObjectTraceback(PyObject *obj);
/* Initialize tracemalloc */ PyAPI_FUNC(int) _PyTraceMalloc_Init(void);
/* Start tracemalloc */ PyAPI_FUNC(int) _PyTraceMalloc_Start(int max_nframe);
/* Stop tracemalloc */ PyAPI_FUNC(void) _PyTraceMalloc_Stop(void);
/* Get the tracemalloc traceback limit */ PyAPI_FUNC(int) _PyTraceMalloc_GetTracebackLimit(void);
/* Get the memory usage of tracemalloc in bytes */ PyAPI_FUNC(size_t) _PyTraceMalloc_GetMemory(void);
/* Get the current size and peak size of traced memory blocks as a 2-tuple */ PyAPI_FUNC(PyObject *) _PyTraceMalloc_GetTracedMemory(void);
/* Set the peak size of traced memory blocks to the current size */ PyAPI_FUNC(void) _PyTraceMalloc_ResetPeak(void);
#endif
#endif /* !Py_TRACEMALLOC_H */
|