diff options
author | Kirill Podoprigora <kirill.bast9@mail.ru> | 2024-02-12 16:05:30 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-12 16:05:30 (GMT) |
commit | 93ac78ac3ee124942bca7492149c3ff0003b6e30 (patch) | |
tree | 8e51387e20345fa788f4d991a56d9dc38d998d59 /Modules/_testinternalcapi.c | |
parent | 95ebd45613d6bf0a8b76778454f1d413d54209db (diff) | |
download | cpython-93ac78ac3ee124942bca7492149c3ff0003b6e30.zip cpython-93ac78ac3ee124942bca7492149c3ff0003b6e30.tar.gz cpython-93ac78ac3ee124942bca7492149c3ff0003b6e30.tar.bz2 |
gh-115058: Add ``reset_rare_event_counters`` function in `_testinternalcapi` (GH-115128)
Diffstat (limited to 'Modules/_testinternalcapi.c')
-rw-r--r-- | Modules/_testinternalcapi.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/Modules/_testinternalcapi.c b/Modules/_testinternalcapi.c index 0bb739b..3834f00 100644 --- a/Modules/_testinternalcapi.c +++ b/Modules/_testinternalcapi.c @@ -1650,6 +1650,20 @@ get_rare_event_counters(PyObject *self, PyObject *type) ); } +static PyObject * +reset_rare_event_counters(PyObject *self, PyObject *Py_UNUSED(type)) +{ + PyInterpreterState *interp = PyInterpreterState_Get(); + + interp->rare_events.set_class = 0; + interp->rare_events.set_bases = 0; + interp->rare_events.set_eval_frame_func = 0; + interp->rare_events.builtin_dict = 0; + interp->rare_events.func_modification = 0; + + return Py_None; +} + #ifdef Py_GIL_DISABLED static PyObject * @@ -1727,6 +1741,7 @@ static PyMethodDef module_functions[] = { _TESTINTERNALCAPI_TEST_LONG_NUMBITS_METHODDEF {"get_type_module_name", get_type_module_name, METH_O}, {"get_rare_event_counters", get_rare_event_counters, METH_NOARGS}, + {"reset_rare_event_counters", reset_rare_event_counters, METH_NOARGS}, #ifdef Py_GIL_DISABLED {"py_thread_id", get_py_thread_id, METH_NOARGS}, #endif |