diff options
author | Victor Stinner <vstinner@python.org> | 2019-11-20 01:27:56 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-11-20 01:27:56 (GMT) |
commit | 01b1cc12e7c6a3d6a3d27ba7c731687d57aae92a (patch) | |
tree | 1d1afefdc486c063853678d126975fe2d019059f /Modules | |
parent | eb1cbbff1cd8214836a492502e75e463ade6f673 (diff) | |
download | cpython-01b1cc12e7c6a3d6a3d27ba7c731687d57aae92a.zip cpython-01b1cc12e7c6a3d6a3d27ba7c731687d57aae92a.tar.gz cpython-01b1cc12e7c6a3d6a3d27ba7c731687d57aae92a.tar.bz2 |
bpo-36710: Add PyInterpreterState.runtime field (GH-17270)
Add PyInterpreterState.runtime field: reference to the _PyRuntime
global variable. This field exists to not have to pass runtime in
addition to tstate to a function. Get runtime from tstate:
tstate->interp->runtime.
Remove "_PyRuntimeState *runtime" parameter from functions already
taking a "PyThreadState *tstate" parameter.
_PyGC_Init() first parameter becomes "PyThreadState *tstate".
Diffstat (limited to 'Modules')
-rw-r--r-- | Modules/_threadmodule.c | 2 | ||||
-rw-r--r-- | Modules/gcmodule.c | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/Modules/_threadmodule.c b/Modules/_threadmodule.c index 1c7df3f..befd213 100644 --- a/Modules/_threadmodule.c +++ b/Modules/_threadmodule.c @@ -1007,7 +1007,7 @@ t_bootstrap(void *boot_raw) runtime = boot->runtime; tstate = boot->tstate; tstate->thread_id = PyThread_get_thread_ident(); - _PyThreadState_Init(runtime, tstate); + _PyThreadState_Init(tstate); PyEval_AcquireThread(tstate); tstate->interp->num_threads++; res = PyObject_Call(boot->func, boot->args, boot->keyw); diff --git a/Modules/gcmodule.c b/Modules/gcmodule.c index 78f6631..05ca026 100644 --- a/Modules/gcmodule.c +++ b/Modules/gcmodule.c @@ -155,9 +155,9 @@ _PyGC_InitializeRuntime(struct _gc_runtime_state *state) PyStatus -_PyGC_Init(_PyRuntimeState *runtime) +_PyGC_Init(PyThreadState *tstate) { - struct _gc_runtime_state *state = &runtime->gc; + struct _gc_runtime_state *state = &tstate->interp->runtime->gc; if (state->garbage == NULL) { state->garbage = PyList_New(0); if (state->garbage == NULL) { |