[issue38591] Deprecate Process Child Watchers

Andrew Svetlov report at bugs.python.org
Sat Oct 26 04:45:41 EDT 2019


Andrew Svetlov <andrew.svetlov at gmail.com> added the comment:

My non-LTS Ubuntu also has 5.3 kernel but I'm talking about the oldest supported RHEL/CentOS.

That's why pidfd_open() cannot be a single implementation. It's so new; my local man-pages system has not a record about the API yet (but the web has: http://man7.org/linux/man-pages/man2/pidfd_open.2.html).

> If asyncio is only run from the main thread, FastChildWatcher is safe, fast and has low memory footprint, no?

Unfortunately, no. FastChildWatcher is safe if you can guarantee that no code executed in asyncio main thread AND thread pools spawn subprocesses. Otherwise, the whole Python process becomes broken by the race condition between FastChildWatcher and any other wait()/waitpid()/waitid() call.

----------

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


More information about the Python-bugs-list mailing list