diff options
author | Victor Stinner <vstinner@python.org> | 2020-06-23 09:33:18 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-06-23 09:33:18 (GMT) |
commit | b4e85cadfbc2b1b24ec5f3159e351dbacedaa5e0 (patch) | |
tree | a121d0df89bdc965649d65a0ca50543293431e61 /Python/pylifecycle.c | |
parent | 26a1ad1c24717990265b71ed093d691500d6301c (diff) | |
download | cpython-b4e85cadfbc2b1b24ec5f3159e351dbacedaa5e0.zip cpython-b4e85cadfbc2b1b24ec5f3159e351dbacedaa5e0.tar.gz cpython-b4e85cadfbc2b1b24ec5f3159e351dbacedaa5e0.tar.bz2 |
bpo-40521: Make dict free lists per-interpreter (GH-20645)
Each interpreter now has its own dict free list:
* Move dict free lists into PyInterpreterState.
* Move PyDict_MAXFREELIST define to pycore_interp.h
* Add _Py_dict_state structure.
* Add tstate parameter to _PyDict_ClearFreeList() and _PyDict_Fini().
* In debug mode, ensure that the dict free lists are not used after
_PyDict_Fini() is called.
* Remove "#ifdef EXPERIMENTAL_ISOLATED_SUBINTERPRETERS".
Diffstat (limited to 'Python/pylifecycle.c')
-rw-r--r-- | Python/pylifecycle.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/Python/pylifecycle.c b/Python/pylifecycle.c index 87f25e6..1b4a3db 100644 --- a/Python/pylifecycle.c +++ b/Python/pylifecycle.c @@ -1258,9 +1258,7 @@ finalize_interp_types(PyThreadState *tstate, int is_main_interp) if (is_main_interp) { _PySet_Fini(); } - if (is_main_interp) { - _PyDict_Fini(); - } + _PyDict_Fini(tstate); _PyList_Fini(tstate); _PyTuple_Fini(tstate); |