Edward Catmur added the comment:

Suggested patch: 
https://bitbucket.org/ecatmur/cpython/compare/19096-multiprocessing-race..#diff

Move the worker_handler.join() to immediately after setting the worker handler 
thread state to TERMINATE.  This is a safe change as nothing in the moved-over 
code affects the worker handler thread, except by terminating workers which is 
precisely what we don't want to happen.  In addition, this is near-equivalent 
behaviour to current close() + join(), which is well-tested.

Also: write tests; and modify Pool.__init__ to refer to its static methods 
using self rather than class name, to make them overridable for testing 
purposes.

----------
hgrepos: +211

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

Reply via email to