This function now also works on Python compiled in release mode.
On error, the debug hooks now use :mod:`tracemalloc` to get the traceback
where a memory block was allocated. The debug hooks now also check
- if the GIL is hold when functions of :c:data:`PYMEM_DOMAIN_OBJ` and
+ if the GIL is held when functions of :c:data:`PYMEM_DOMAIN_OBJ` and
:c:data:`PYMEM_DOMAIN_MEM` domains are called.
* ``debug``: install debug hooks on top of the default memory allocator
* ``malloc_debug``: same as ``malloc`` but also install debug hooks
- * ``pymalloc_debug``: same as ``pyalloc`` but also install debug hooks
+ * ``pymalloc_debug``: same as ``pymalloc`` but also install debug hooks
- When is compiled in release mode, the default is ``pymalloc``. When Python
- is compiled in debug mode, the default is ``pymalloc_debug``: debug hooks
- are installed.
+ When Python is compiled in release mode, the default is ``pymalloc``. When
+ compiled in debug mode, the default is ``pymalloc_debug`` and the debug hooks
+ are used automatically.
If Python is configured without ``pymalloc`` support, ``pymalloc`` and
``pymalloc_debug`` are not available, the default is ``malloc`` in release
functions of :c:data:`PYMEM_DOMAIN_OBJ` (ex: :c:func:`PyObject_Malloc`) and
:c:data:`PYMEM_DOMAIN_MEM` (ex: :c:func:`PyMem_Malloc`) domains are called.
-Checking if the GIL is hold is also a new feature of Python 3.6.
+Checking if the GIL is held is also a new feature of Python 3.6.
See the :c:func:`PyMem_SetupDebugHooks` function for debug hooks on Python
memory allocators.