[issue34781] infinite waiting in multiprocessing.Pool

Tomáš Bouda report at bugs.python.org
Sun Sep 23 17:51:08 EDT 2018


Tomáš Bouda <tomas.bouda at gmail.com> added the comment:

After more digging, I found that the following happens:

popen_fork.py -> _launch(self, process_obj) -> self.pid = os.fork()

When I let process (both child and parent) print resulting pid, on freezing I can see:
a) 50-times pid > 0
b) 49-times pid == 0

That means the parent is aware of 50 children, while only 49 of them get to the next line. Not sure if the one remaining process crashes on segfault, but parent apparently hangs later in os.waitpid() on this valid pid of the missing child.

----------

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue34781>
_______________________________________


More information about the Python-bugs-list mailing list