blob: bd14217c199c3cb212aa8253d1c32c0e53325b40 (
plain)
| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
 | #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);
#endif
#endif /* !Py_TRACEMALLOC_H */
 |