Closed
Description
Feature or enhancement
We should make functools.lru_cache
thread-safe in the --disable-gil
builds.
For context, here is the commit from the nogil-3.12
fork: colesbury/nogil-3.12@041a08e339
NOTES (differences in 3.13 from nogil-3.12
):
- No need for an extra mutex in
lru_cache_object
; every PyObject has a mutex in the--disable-gil
builds - For
_functools__lru_cache_wrapper_cache_info_impl
and_functools__lru_cache_wrapper_cache_clear_impl
we should instead use the@critical_section
Arugment Clinic directive. This will be simpler and require fewer changes to the code.lru_cache_call
still needs explicit calls to the critical section API.
Linked PRs
Metadata
Metadata
Assignees
Labels
bugs and security fixesbugs and security fixesC modules in the Modules dirC modules in the Modules dirA feature request or enhancementA feature request or enhancement