mirror of
https://github.com/python/cpython.git
synced 2025-09-27 18:59:43 +00:00
Merged revisions 70647,70652 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r70647 | antoine.pitrou | 2009-03-28 20:10:13 +0100 (sam., 28 mars 2009) | 3 lines Publicize the GC untracking optimization ........ r70652 | antoine.pitrou | 2009-03-28 20:17:54 +0100 (sam., 28 mars 2009) | 3 lines Fix a typo and be more specific ........
This commit is contained in:
parent
7a51e589a4
commit
9d81def047
1 changed files with 12 additions and 0 deletions
|
@ -129,6 +129,18 @@ A few performance enhancements have been added:
|
||||||
(Suggested by Martin von Loewis and implemented by Antoine Pitrou;
|
(Suggested by Martin von Loewis and implemented by Antoine Pitrou;
|
||||||
:issue:`4074`.)
|
:issue:`4074`.)
|
||||||
|
|
||||||
|
* The garbage collector tries to avoid tracking simple containers which
|
||||||
|
can't be part of a cycle. As of now, this is true for tuples and dicts
|
||||||
|
containing atomic types (such as ints, strings, etc.). Transitively, a dict
|
||||||
|
containing tuples of atomic types won't be tracked either. This helps bring
|
||||||
|
down the individual cost of each garbage collection, since it decreases the
|
||||||
|
number of objects to be considered and traversed by the collector.
|
||||||
|
|
||||||
|
To help diagnosing this optimization, a new function in the :mod:`gc`
|
||||||
|
module, :func:`is_tracked`, returns True if a given instance is tracked
|
||||||
|
by the garbage collector, False otherwise.
|
||||||
|
(Contributed by Antoine Pitrou; :issue:`4688`.)
|
||||||
|
|
||||||
|
|
||||||
.. ======================================================================
|
.. ======================================================================
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue