diff options
author | Victor Stinner <vstinner@redhat.com> | 2019-06-03 16:14:24 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-06-03 16:14:24 (GMT) |
commit | e225bebc1409bcf68db74a35ed3c31222883bf8f (patch) | |
tree | 42153d2d48a3f1c784812b4fb54ed3557be713d0 /Include | |
parent | 49a7e347976c9b39149ac7505b11ad6e9e2bdeec (diff) | |
download | cpython-e225bebc1409bcf68db74a35ed3c31222883bf8f.zip cpython-e225bebc1409bcf68db74a35ed3c31222883bf8f.tar.gz cpython-e225bebc1409bcf68db74a35ed3c31222883bf8f.tar.bz2 |
Revert "bpo-33608: Factor out a private, per-interpreter _Py_AddPendingCall(). (gh-13714)" (GH-13780)
This reverts commit 6a150bcaeb190d1731b38ab9c7a5d1a352847ddc.
Diffstat (limited to 'Include')
-rw-r--r-- | Include/internal/pycore_ceval.h | 13 | ||||
-rw-r--r-- | Include/internal/pycore_pystate.h | 12 |
2 files changed, 7 insertions, 18 deletions
diff --git a/Include/internal/pycore_ceval.h b/Include/internal/pycore_ceval.h index 2c6df9a..4c1c0e2 100644 --- a/Include/internal/pycore_ceval.h +++ b/Include/internal/pycore_ceval.h @@ -12,22 +12,19 @@ extern "C" { #include "pycore_pystate.h" #include "pythread.h" +PyAPI_FUNC(void) _Py_FinishPendingCalls(_PyRuntimeState *runtime); PyAPI_FUNC(void) _PyEval_Initialize(struct _ceval_runtime_state *); PyAPI_FUNC(void) _PyEval_FiniThreads( - struct _ceval_runtime_state *); + struct _ceval_runtime_state *ceval); PyAPI_FUNC(void) _PyEval_SignalReceived( - struct _ceval_runtime_state *); + struct _ceval_runtime_state *ceval); PyAPI_FUNC(int) _PyEval_AddPendingCall( PyThreadState *tstate, - struct _ceval_runtime_state *, - struct _ceval_interpreter_state *, - unsigned long thread_id, + struct _ceval_runtime_state *ceval, int (*func)(void *), void *arg); -PyAPI_FUNC(void) _PyEval_FinishPendingCalls(PyInterpreterState *); PyAPI_FUNC(void) _PyEval_SignalAsyncExc( - struct _ceval_runtime_state *, - struct _ceval_interpreter_state *); + struct _ceval_runtime_state *ceval); PyAPI_FUNC(void) _PyEval_ReInitThreads( _PyRuntimeState *runtime); diff --git a/Include/internal/pycore_pystate.h b/Include/internal/pycore_pystate.h index aca5533..520a74b 100644 --- a/Include/internal/pycore_pystate.h +++ b/Include/internal/pycore_pystate.h @@ -25,7 +25,7 @@ struct pyruntimestate; /* ceval state */ -struct _ceval_pending_calls { +struct _pending_calls { int finishing; PyThread_type_lock lock; /* Request for running pending calls. */ @@ -36,7 +36,6 @@ struct _ceval_pending_calls { int async_exc; #define NPENDINGCALLS 32 struct { - unsigned long thread_id; int (*func)(void *); void *arg; } calls[NPENDINGCALLS]; @@ -54,21 +53,15 @@ struct _ceval_runtime_state { int tracing_possible; /* This single variable consolidates all requests to break out of the fast path in the eval loop. */ - // XXX This can move to _ceval_interpreter_state once all parts - // from COMPUTE_EVAL_BREAKER have moved under PyInterpreterState. _Py_atomic_int eval_breaker; /* Request for dropping the GIL */ _Py_atomic_int gil_drop_request; + struct _pending_calls pending; /* Request for checking signals. */ _Py_atomic_int signals_pending; struct _gil_runtime_state gil; }; -struct _ceval_interpreter_state { - struct _ceval_pending_calls pending; -}; - - /* interpreter state */ typedef PyObject* (*_PyFrameEvalFunction)(struct _frame *, int); @@ -143,7 +136,6 @@ struct _is { uint64_t tstate_next_unique_id; - struct _ceval_interpreter_state ceval; struct _warnings_runtime_state warnings; PyObject *audit_hooks; |