Kyle Stanley <aeros...@gmail.com> added the comment:

> > 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

Am I misunderstanding something here or is this supposed to be 
"FastChildWatcher is safe if you can guarantee that no code executed *outside 
of* the asyncio main thread AND ..."? Alternatively, "FastChildWatcher is safe 
if you can guarantee that code *only* executed in the asyncio main thread". 
Both of the above have the same functional meaning. 

I think it was a typo, but I just wanted to make sure because the distinction 
from the original makes a functional difference in this case. 

Also, regarding the second part "thread pools spawn subprocesses", is that to 
say that subprocesses can only spawn within the thread pools? As in, 
FastChildWatcher becomes unsafe if subprocesses are spawned from anywhere else?

These answers may be fairly obvious to someone familiar working within the 
internals of FastChildWatcher, but it may not be overly clear to someone such 
as myself who has mostly just read through the documentation and looked over 
the implementation briefly. I'm only familiar with the internals of 
ThreadedChildWatcher.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue38591>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to