Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hello @noxdafox ,
As I mentioned some time ago, working with
ProcessPool
made some headache for me due to hang & zombie processes. And this patch solved it in my case:1st commit about zombies management, and despite of I can't repeat it, I used well-known recommendation http://www.microhowto.info/howto/reap_zombie_processes_using_a_sigchld_handler.html, and looked to python code in gunicorn, project which I intrust to.
2nd commit about slept child processes, which can stay after parent process finish. Example below helps to repeat it:
launch:
observe launched processes:
observe after 10 sec:
let's see, what it waits for:
As I understand, something wrong happens, because it forked after fork, which had lead to descriptors communication problem.