summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
Diffstat (limited to 'Lib')
-rw-r--r--Lib/test/test_signal.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/Lib/test/test_signal.py b/Lib/test/test_signal.py
index 2562a57..25afd6a 100644
--- a/Lib/test/test_signal.py
+++ b/Lib/test/test_signal.py
@@ -1406,6 +1406,21 @@ class RaiseSignalTest(unittest.TestCase):
signal.raise_signal(signal.SIGINT)
self.assertTrue(is_ok)
+ def test__thread_interrupt_main(self):
+ # See https://github.com/python/cpython/issues/102397
+ code = """if 1:
+ import _thread
+ class Foo():
+ def __del__(self):
+ _thread.interrupt_main()
+
+ x = Foo()
+ """
+
+ rc, out, err = assert_python_ok('-c', code)
+ self.assertIn(b'OSError: Signal 2 ignored due to race condition', err)
+
+
class PidfdSignalTest(unittest.TestCase):