diff options
author | Richard Oudkerk <shibturn@gmail.com> | 2013-08-28 12:50:19 (GMT) |
---|---|---|
committer | Richard Oudkerk <shibturn@gmail.com> | 2013-08-28 12:50:19 (GMT) |
commit | 6a53af893ad2708af8dda71515254abd7118d7de (patch) | |
tree | 6bb465342ff8611b7d8955087ce03fe4af561a40 | |
parent | d98af985d0e8e2199e5c8bcb8a2da6a849e86d9a (diff) | |
download | cpython-6a53af893ad2708af8dda71515254abd7118d7de.zip cpython-6a53af893ad2708af8dda71515254abd7118d7de.tar.gz cpython-6a53af893ad2708af8dda71515254abd7118d7de.tar.bz2 |
Issue #18786: Don't reinstall old SIGUSR1 handler prematurely.
-rw-r--r-- | Lib/test/_test_multiprocessing.py | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/Lib/test/_test_multiprocessing.py b/Lib/test/_test_multiprocessing.py index d7e5332..127c267 100644 --- a/Lib/test/_test_multiprocessing.py +++ b/Lib/test/_test_multiprocessing.py @@ -2925,7 +2925,7 @@ class _TestPollEintr(BaseTestCase): @classmethod def _killer(cls, pid): - time.sleep(0.5) + time.sleep(0.1) os.kill(pid, signal.SIGUSR1) @unittest.skipUnless(hasattr(signal, 'SIGUSR1'), 'requires SIGUSR1') @@ -2938,12 +2938,14 @@ class _TestPollEintr(BaseTestCase): try: killer = self.Process(target=self._killer, args=(pid,)) killer.start() - p = self.Process(target=time.sleep, args=(1,)) - p.start() - p.join() + try: + p = self.Process(target=time.sleep, args=(2,)) + p.start() + p.join() + finally: + killer.join() self.assertTrue(got_signal[0]) self.assertEqual(p.exitcode, 0) - killer.join() finally: signal.signal(signal.SIGUSR1, oldhandler) |