mirror of
https://github.com/python/cpython
synced 2024-07-03 09:04:13 +00:00
PyDict_Next no longer locks the dictionary in the free-threaded build. Locking around individual PyDict_Next calls is not sufficient because the function returns borrowed references and because it allows concurrent modifications during the iteraiton loop. The internal locking also interferes with correct external synchronization because it may suspend outer critical sections created by the caller. |
||
---|---|---|
.. | ||
clinic | ||
mimalloc | ||
stringlib | ||
abstract.c | ||
boolobject.c | ||
bytearrayobject.c | ||
bytes_methods.c | ||
bytesobject.c | ||
call.c | ||
capsule.c | ||
cellobject.c | ||
classobject.c | ||
codeobject.c | ||
complexobject.c | ||
descrobject.c | ||
dictnotes.txt | ||
dictobject.c | ||
enumobject.c | ||
exceptions.c | ||
fileobject.c | ||
floatobject.c | ||
frame_layout.md | ||
frameobject.c | ||
funcobject.c | ||
genericaliasobject.c | ||
genobject.c | ||
iterobject.c | ||
listobject.c | ||
listsort.txt | ||
lnotab_notes.txt | ||
longobject.c | ||
memoryobject.c | ||
methodobject.c | ||
moduleobject.c | ||
namespaceobject.c | ||
object_layout_312.gv | ||
object_layout_312.png | ||
object_layout_313.gv | ||
object_layout_313.png | ||
object_layout_full_312.gv | ||
object_layout_full_312.png | ||
object_layout_full_313.gv | ||
object_layout_full_313.png | ||
object_layout.md | ||
object.c | ||
obmalloc.c | ||
odictobject.c | ||
picklebufobject.c | ||
rangeobject.c | ||
README | ||
setobject.c | ||
sliceobject.c | ||
structseq.c | ||
tupleobject.c | ||
typeobject.c | ||
typeslots.inc | ||
typeslots.py | ||
typevarobject.c | ||
unicodectype.c | ||
unicodeobject.c | ||
unicodetype_db.h | ||
unionobject.c | ||
weakrefobject.c |
Source files for various builtin objects