mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 05:31:20 +00:00 
			
		
		
		
	
		
			
	
	
		
			39 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			39 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
|   | #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 */
 |