summaryrefslogtreecommitdiffstats
path: root/Python/pystrcmp.c
diff options
context:
space:
mode:
authorEric Snow <ericsnowcurrently@gmail.com>2023-11-28 02:36:29 (GMT)
committerGitHub <noreply@github.com>2023-11-28 02:36:29 (GMT)
commit1e1a30f9f49ed5104a4be194d094b13703bcc0de (patch)
treebc88f0ea9e3c6d998dcf40be3d367e6eb7e320f0 /Python/pystrcmp.c
parent0122b4d7c92855e97912cf827dd81d836725c9a4 (diff)
downloadcpython-1e1a30f9f49ed5104a4be194d094b13703bcc0de.zip
cpython-1e1a30f9f49ed5104a4be194d094b13703bcc0de.tar.gz
cpython-1e1a30f9f49ed5104a4be194d094b13703bcc0de.tar.bz2
[3.12] gh-110310: Add a Per-Interpreter XID Registry for Heap Types (gh-110311) (gh-110714)
We do the following: * add a per-interpreter XID registry (PyInterpreterState.xidregistry) * put heap types there (keep static types in _PyRuntimeState.xidregistry) * clear the registries during interpreter/runtime finalization * avoid duplicate entries in the registry (when _PyCrossInterpreterData_RegisterClass() is called more than once for a type) * use Py_TYPE() instead of PyObject_Type() in _PyCrossInterpreterData_Lookup() The per-interpreter registry helps preserve isolation between interpreters. This is important when heap types are registered, which is something we haven't been doing yet but I will likely do soon. (cherry-picked from commit 80dc39e1dc2abc809f448cba5d2c5b9c1c631e11)
Diffstat (limited to 'Python/pystrcmp.c')
0 files changed, 0 insertions, 0 deletions