mirror of
https://github.com/python/cpython.git
synced 2026-07-27 20:33:48 -04:00
b2b9aaa93d
On Windows, the `_PyOS_SigintEvent()` event handle is used to interrupt
the main thread when Ctrl-C is pressed. Previously, we also waited on
the event from other threads, but ignored the result. However, this can
race with interpreter shutdown because the main thread closes the handle
in `_PySignal_Fini` and threads may still be running and using mutexes
during interpreter shtudown.
Only use `_PyOS_SigintEvent()` in the main thread in parking_lot.c, like
we do in other places in the CPython codebase.
(cherry picked from commit cc581f32bf)
Co-authored-by: Sam Gross <colesbury@gmail.com>
Miscellaneous source files for the main Python shared library