Make random.Random
thread-safe in --disable-gil
builds
#112071
Labels
3.13
bugs and security fixes
extension-modules
C modules in the Modules dir
topic-free-threading
type-feature
A feature request or enhancement
Feature or enhancement
random.Random
has mutable internal state. We should use the critical section API to make it thread-safe in--disable-gil
builds.For context, here is the change from the
nogil-3.12
fork. colesbury/nogil-3.12@9bf62ffc4b. Note that we want to do things a bit differently in CPython 3.13:_PyMutex mutex
inRandomObject
@critical_section
directive as the first line.nogil-3.12
, we want to push the locking "up" to the around the methods. (See the above note 2).Linked PRs
_random.Random
methods thread-safe in--disable-gil
builds #112128The text was updated successfully, but these errors were encountered: