diff options
author | Eric Snow <ericsnowcurrently@gmail.com> | 2022-12-09 00:50:58 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-12-09 00:50:58 (GMT) |
commit | 1160001b34615066b1188d5fb457131b1ebb928d (patch) | |
tree | 827671c00c80bf761675700128457d7171ec8f46 /Python/thread.c | |
parent | bc8cdf8c3d58f5d28c9e70c72eaae52c6d13f961 (diff) | |
download | cpython-1160001b34615066b1188d5fb457131b1ebb928d.zip cpython-1160001b34615066b1188d5fb457131b1ebb928d.tar.gz cpython-1160001b34615066b1188d5fb457131b1ebb928d.tar.bz2 |
gh-81057: Move Threading-Related Globals to _PyRuntimeState (#100084)
https://github.com/python/cpython/issues/81057
Diffstat (limited to 'Python/thread.c')
-rw-r--r-- | Python/thread.c | 36 |
1 files changed, 6 insertions, 30 deletions
diff --git a/Python/thread.c b/Python/thread.c index 3c1e78e..4581f1a 100644 --- a/Python/thread.c +++ b/Python/thread.c @@ -8,15 +8,7 @@ #include "Python.h" #include "pycore_pystate.h" // _PyInterpreterState_GET() #include "pycore_structseq.h" // _PyStructSequence_FiniType() - -#ifndef _POSIX_THREADS -/* This means pthreads are not implemented in libc headers, hence the macro - not present in unistd.h. But they still can be implemented as an external - library (e.g. gnu pth in pthread emulation) */ -# ifdef HAVE_PTHREAD_H -# include <pthread.h> /* _POSIX_THREADS */ -# endif -#endif +#include "pycore_pythread.h" #ifndef DONT_HAVE_STDIO_H #include <stdio.h> @@ -24,33 +16,17 @@ #include <stdlib.h> -#ifndef _POSIX_THREADS - -/* Check if we're running on HP-UX and _SC_THREADS is defined. If so, then - enough of the Posix threads package is implemented to support python - threads. - - This is valid for HP-UX 11.23 running on an ia64 system. If needed, add - a check of __ia64 to verify that we're running on an ia64 system instead - of a pa-risc system. -*/ -#ifdef __hpux -#ifdef _SC_THREADS -#define _POSIX_THREADS -#endif -#endif - -#endif /* _POSIX_THREADS */ - -static int initialized; static void PyThread__init_thread(void); /* Forward */ +#define initialized _PyRuntime.threads.initialized + void PyThread_init_thread(void) { - if (initialized) + if (initialized) { return; + } initialized = 1; PyThread__init_thread(); } @@ -58,7 +34,7 @@ PyThread_init_thread(void) #if defined(HAVE_PTHREAD_STUBS) # define PYTHREAD_NAME "pthread-stubs" # include "thread_pthread_stubs.h" -#elif defined(_POSIX_THREADS) +#elif defined(_USE_PTHREADS) /* AKA _PTHREADS */ # if defined(__EMSCRIPTEN__) && !defined(__EMSCRIPTEN_PTHREADS__) # define PYTHREAD_NAME "pthread-stubs" # else |