mirror of
https://github.com/python/cpython.git
synced 2025-09-30 04:15:43 +00:00
GH-109975: Copyedit 3.13 What's New: Remove references to the incremental GC (#124947)
This commit is contained in:
parent
7ecaf21946
commit
c8db0e817e
1 changed files with 0 additions and 66 deletions
|
@ -498,30 +498,6 @@ are not tier 3 supported platforms, but will have best-effort support.
|
||||||
.. seealso:: :pep:`730`, :pep:`738`
|
.. seealso:: :pep:`730`, :pep:`738`
|
||||||
|
|
||||||
|
|
||||||
.. _whatsnew313-incremental-gc:
|
|
||||||
|
|
||||||
Incremental garbage collection
|
|
||||||
------------------------------
|
|
||||||
|
|
||||||
The cycle garbage collector is now incremental.
|
|
||||||
This means that maximum pause times are reduced
|
|
||||||
by an order of magnitude or more for larger heaps.
|
|
||||||
|
|
||||||
There are now only two generations: young and old.
|
|
||||||
When :func:`gc.collect` is not called directly, the
|
|
||||||
GC is invoked a little less frequently. When invoked, it
|
|
||||||
collects the young generation and an increment of the
|
|
||||||
old generation, instead of collecting one or more generations.
|
|
||||||
|
|
||||||
The behavior of :func:`!gc.collect` changes slightly:
|
|
||||||
|
|
||||||
* ``gc.collect(1)``: Performs an increment of garbage collection,
|
|
||||||
rather than collecting generation 1.
|
|
||||||
* Other calls to :func:`!gc.collect` are unchanged.
|
|
||||||
|
|
||||||
(Contributed by Mark Shannon in :gh:`108362`.)
|
|
||||||
|
|
||||||
|
|
||||||
Other Language Changes
|
Other Language Changes
|
||||||
======================
|
======================
|
||||||
|
|
||||||
|
@ -918,36 +894,6 @@ fractions
|
||||||
(Contributed by Mark Dickinson in :gh:`111320`.)
|
(Contributed by Mark Dickinson in :gh:`111320`.)
|
||||||
|
|
||||||
|
|
||||||
gc
|
|
||||||
--
|
|
||||||
|
|
||||||
The cyclic garbage collector is now incremental,
|
|
||||||
which changes the meaning of the results of
|
|
||||||
:meth:`~gc.get_threshold` and :meth:`~gc.set_threshold`
|
|
||||||
as well as :meth:`~gc.get_count` and :meth:`~gc.get_stats`.
|
|
||||||
|
|
||||||
* For backwards compatibility, :meth:`~gc.get_threshold` continues to return
|
|
||||||
a three-item tuple.
|
|
||||||
The first value is the threshold for young collections, as before;
|
|
||||||
the second value determines the rate at which the old collection is scanned
|
|
||||||
(the default is 10, and higher values mean that the old collection
|
|
||||||
is scanned more slowly).
|
|
||||||
The third value is meaningless and is always zero.
|
|
||||||
|
|
||||||
* :meth:`~gc.set_threshold` ignores any items after the second.
|
|
||||||
|
|
||||||
* :meth:`~gc.get_count` and :meth:`~gc.get_stats` continue to return
|
|
||||||
the same format of results.
|
|
||||||
The only difference is that instead of the results referring to
|
|
||||||
the young, aging and old generations,
|
|
||||||
the results refer to the young generation
|
|
||||||
and the aging and collecting spaces of the old generation.
|
|
||||||
|
|
||||||
In summary, code that attempted to manipulate the behavior of the cycle GC
|
|
||||||
may not work exactly as intended, but it is very unlikely to be harmful.
|
|
||||||
All other code will work just fine.
|
|
||||||
|
|
||||||
|
|
||||||
glob
|
glob
|
||||||
----
|
----
|
||||||
|
|
||||||
|
@ -1512,11 +1458,6 @@ zipimport
|
||||||
Optimizations
|
Optimizations
|
||||||
=============
|
=============
|
||||||
|
|
||||||
* The new :ref:`incremental garbage collector <whatsnew313-incremental-gc>`
|
|
||||||
means that maximum pause times are reduced
|
|
||||||
by an order of magnitude or more for larger heaps.
|
|
||||||
(Contributed by Mark Shannon in :gh:`108362`.)
|
|
||||||
|
|
||||||
* Several standard library modules have had
|
* Several standard library modules have had
|
||||||
their import times significantly improved.
|
their import times significantly improved.
|
||||||
For example, the import time of the :mod:`typing` module
|
For example, the import time of the :mod:`typing` module
|
||||||
|
@ -2629,13 +2570,6 @@ Changes in the Python API
|
||||||
Wrap it in :func:`staticmethod` if you want to preserve the old behavior.
|
Wrap it in :func:`staticmethod` if you want to preserve the old behavior.
|
||||||
(Contributed by Serhiy Storchaka in :gh:`121027`.)
|
(Contributed by Serhiy Storchaka in :gh:`121027`.)
|
||||||
|
|
||||||
* The :ref:`garbage collector is now incremental <whatsnew313-incremental-gc>`,
|
|
||||||
which means that the behavior of :func:`gc.collect` changes slightly:
|
|
||||||
|
|
||||||
* ``gc.collect(1)``: Performs an increment of garbage collection,
|
|
||||||
rather than collecting generation 1.
|
|
||||||
* Other calls to :func:`!gc.collect` are unchanged.
|
|
||||||
|
|
||||||
* An :exc:`OSError` is now raised by :func:`getpass.getuser`
|
* An :exc:`OSError` is now raised by :func:`getpass.getuser`
|
||||||
for any failure to retrieve a username,
|
for any failure to retrieve a username,
|
||||||
instead of :exc:`ImportError` on non-Unix platforms
|
instead of :exc:`ImportError` on non-Unix platforms
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue