A question about multiprocessing.Pool

A question from Slack. . .

If using pool.map() what happens to the parent process if one of the items crashes? What happens to the other children in the pool?I’m not finding a ton of docs on this - certainly nothing thats easy to track down in the reference for Pool.map

As far as I understand, if the process exits prematurely, you will see a normal exception in the parent process (broken pipe, etc) or a hang waiting for the process to reply, which would need to be interrupted. If the child merely raised an exception, you will see this exception in the parent process.

You should always explicitly close your pool when you are done with it.