mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
Revert "bpo-30860: Consolidate stateful runtime globals." (#3379)
Windows buildbots started failing due to include-related errors.
This commit is contained in:
parent
833860615b
commit
05351c1bd8
40 changed files with 1327 additions and 2726 deletions
|
@ -14,6 +14,7 @@
|
|||
#include "pythread.h"
|
||||
|
||||
static PyObject *ThreadError;
|
||||
static long nb_threads = 0;
|
||||
static PyObject *str_dict;
|
||||
|
||||
_Py_IDENTIFIER(stderr);
|
||||
|
@ -992,7 +993,7 @@ t_bootstrap(void *boot_raw)
|
|||
tstate->thread_id = PyThread_get_thread_ident();
|
||||
_PyThreadState_Init(tstate);
|
||||
PyEval_AcquireThread(tstate);
|
||||
tstate->interp->num_threads++;
|
||||
nb_threads++;
|
||||
res = PyObject_Call(boot->func, boot->args, boot->keyw);
|
||||
if (res == NULL) {
|
||||
if (PyErr_ExceptionMatches(PyExc_SystemExit))
|
||||
|
@ -1019,7 +1020,7 @@ t_bootstrap(void *boot_raw)
|
|||
Py_DECREF(boot->args);
|
||||
Py_XDECREF(boot->keyw);
|
||||
PyMem_DEL(boot_raw);
|
||||
tstate->interp->num_threads--;
|
||||
nb_threads--;
|
||||
PyThreadState_Clear(tstate);
|
||||
PyThreadState_DeleteCurrent();
|
||||
PyThread_exit_thread();
|
||||
|
@ -1158,8 +1159,7 @@ A thread's identity may be reused for another thread after it exits.");
|
|||
static PyObject *
|
||||
thread__count(PyObject *self)
|
||||
{
|
||||
PyThreadState *tstate = PyThreadState_Get();
|
||||
return PyLong_FromLong(tstate->interp->num_threads);
|
||||
return PyLong_FromLong(nb_threads);
|
||||
}
|
||||
|
||||
PyDoc_STRVAR(_count_doc,
|
||||
|
@ -1352,7 +1352,6 @@ PyInit__thread(void)
|
|||
PyObject *m, *d, *v;
|
||||
double time_max;
|
||||
double timeout_max;
|
||||
PyThreadState *tstate = PyThreadState_Get();
|
||||
|
||||
/* Initialize types: */
|
||||
if (PyType_Ready(&localdummytype) < 0)
|
||||
|
@ -1397,7 +1396,7 @@ PyInit__thread(void)
|
|||
if (PyModule_AddObject(m, "_local", (PyObject *)&localtype) < 0)
|
||||
return NULL;
|
||||
|
||||
tstate->interp->num_threads = 0;
|
||||
nb_threads = 0;
|
||||
|
||||
str_dict = PyUnicode_InternFromString("__dict__");
|
||||
if (str_dict == NULL)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue