mirror of
https://github.com/python/cpython.git
synced 2025-08-03 00:23:06 +00:00
bpo-39489: Remove COUNT_ALLOCS special build (GH-18259)
Remove: * COUNT_ALLOCS macro * sys.getcounts() function * SHOW_ALLOC_COUNT code in listobject.c * SHOW_TRACK_COUNT code in tupleobject.c * PyConfig.show_alloc_count field * -X showalloccount command line option * @test.support.requires_type_collecting decorator
This commit is contained in:
parent
869c0c99b9
commit
c6e5c1123b
34 changed files with 24 additions and 469 deletions
|
@ -627,14 +627,6 @@ PyConfig
|
|||
|
||||
``python3 -m MODULE`` argument. Used by :c:func:`Py_RunMain`.
|
||||
|
||||
.. c:member:: int show_alloc_count
|
||||
|
||||
Show allocation counts at exit?
|
||||
|
||||
Set to 1 by :option:`-X showalloccount <-X>` command line option.
|
||||
|
||||
Need a special Python build with ``COUNT_ALLOCS`` macro defined.
|
||||
|
||||
.. c:member:: int show_ref_count
|
||||
|
||||
Show total reference count at exit?
|
||||
|
@ -702,6 +694,10 @@ arguments are stripped from ``argv``: see :ref:`Command Line Arguments
|
|||
The ``xoptions`` options are parsed to set other options: see :option:`-X`
|
||||
option.
|
||||
|
||||
.. versionchanged:: 3.9
|
||||
|
||||
The ``show_alloc_count`` field has been removed.
|
||||
|
||||
|
||||
Initialization with PyConfig
|
||||
----------------------------
|
||||
|
|
|
@ -148,15 +148,6 @@ Quick Reference
|
|||
| :c:member:`~PyTypeObject.tp_vectorcall` | :c:type:`vectorcallfunc` | | | | | |
|
||||
+------------------------------------------------+-----------------------------------+-------------------+---+---+---+---+
|
||||
|
||||
If :const:`COUNT_ALLOCS` is defined then the following (internal-only)
|
||||
fields exist as well:
|
||||
|
||||
* :c:member:`~PyTypeObject.tp_allocs`
|
||||
* :c:member:`~PyTypeObject.tp_frees`
|
||||
* :c:member:`~PyTypeObject.tp_maxalloc`
|
||||
* :c:member:`~PyTypeObject.tp_prev`
|
||||
* :c:member:`~PyTypeObject.tp_next`
|
||||
|
||||
.. [#slots]
|
||||
A slot name in parentheses indicates it is (effectively) deprecated.
|
||||
Names in angle brackets should be treated as read-only.
|
||||
|
@ -1904,31 +1895,6 @@ and :c:type:`PyType_Type` effectively act as defaults.)
|
|||
.. versionadded:: 3.9 (the field exists since 3.8 but it's only used since 3.9)
|
||||
|
||||
|
||||
The remaining fields are only defined if the feature test macro
|
||||
:const:`COUNT_ALLOCS` is defined, and are for internal use only. They are
|
||||
documented here for completeness. None of these fields are inherited by
|
||||
subtypes.
|
||||
|
||||
.. c:member:: Py_ssize_t PyTypeObject.tp_allocs
|
||||
|
||||
Number of allocations.
|
||||
|
||||
.. c:member:: Py_ssize_t PyTypeObject.tp_frees
|
||||
|
||||
Number of frees.
|
||||
|
||||
.. c:member:: Py_ssize_t PyTypeObject.tp_maxalloc
|
||||
|
||||
Maximum simultaneously allocated objects.
|
||||
|
||||
.. c:member:: PyTypeObject* PyTypeObject.tp_prev
|
||||
|
||||
Pointer to the previous type object with a non-zero :c:member:`~PyTypeObject.tp_allocs` field.
|
||||
|
||||
.. c:member:: PyTypeObject* PyTypeObject.tp_next
|
||||
|
||||
Pointer to the next type object with a non-zero :c:member:`~PyTypeObject.tp_allocs` field.
|
||||
|
||||
Also, note that, in a garbage collected Python, :c:member:`~PyTypeObject.tp_dealloc` may be called from
|
||||
any Python thread, not just the thread which created the object (if the object
|
||||
becomes part of a refcount cycle, that cycle might be collected by a garbage
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue