bpo-34040, multiprocessing: Fix test_forkserver_sigkill() (GH-8081) · python/cpython@07888e1

Original file line numberDiff line numberDiff line change

@@ -651,13 +651,17 @@ def check_forkserver_death(self, signum):

651651

from multiprocessing.forkserver import _forkserver

652652

_forkserver.ensure_running()

653653
654+

# First process sleeps 500 ms

655+

delay = 0.5

656+
654657

evt = self.Event()

655-

proc = self.Process(target=self._sleep_and_set_event, args=(evt, 1.0))

658+

proc = self.Process(target=self._sleep_and_set_event, args=(evt, delay))

656659

proc.start()

657660
658661

pid = _forkserver._forkserver_pid

659662

os.kill(pid, signum)

660-

time.sleep(1.0) # give it time to die

663+

# give time to the fork server to die and time to proc to complete

664+

time.sleep(delay * 2.0)

661665
662666

evt2 = self.Event()

663667

proc2 = self.Process(target=self._sleep_and_set_event, args=(evt2,))