From: Victor Stinner Date: Tue, 4 Mar 2025 17:05:20 +0000 (+0100) Subject: gh-130730: Fix multiprocessing test_active_children() (#130837) X-Git-Tag: v3.14.0a6~163 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=3dd3675492a3fc3b7996613ef75a9044ee7449b0;p=thirdparty%2FPython%2Fcpython.git gh-130730: Fix multiprocessing test_active_children() (#130837) Replace a sleep with an event: sleep is not a reliable synchronization primitive. --- diff --git a/Lib/test/_test_multiprocessing.py b/Lib/test/_test_multiprocessing.py index f31151e53c4b..67ab8f098f70 100644 --- a/Lib/test/_test_multiprocessing.py +++ b/Lib/test/_test_multiprocessing.py @@ -589,12 +589,16 @@ class _TestProcess(BaseTestCase): def test_active_children(self): self.assertEqual(type(self.active_children()), list) - p = self.Process(target=time.sleep, args=(DELTA,)) + event = self.Event() + p = self.Process(target=event.wait, args=()) self.assertNotIn(p, self.active_children()) - p.daemon = True - p.start() - self.assertIn(p, self.active_children()) + try: + p.daemon = True + p.start() + self.assertIn(p, self.active_children()) + finally: + event.set() p.join() self.assertNotIn(p, self.active_children())