I have 2 ideas I thought about for the `futures` module:<div><br></div><div>1. A method `Executor<span style="font-size: 13px;">.filter` that will be to the built-in `filter` what </span><span style="font-size: 13px;">`Executor</span><span style="font-size: 13px;">.filter` is to the built-in `map`.</span></div><div><span style="font-size: 13px;"><br></span></div><div><span style="font-size: 13px;">2. A keyword argument `join_on_exit` to `Executor.__init__`, with a default of `False`. When `True`, upon `Executor.__exit__` all futures will be run to completion. This'll be useful to avoid the `</span>Cannot schedule new futures after shutdown` exception without manually exhausting all the iterators returned by e.g. `Executor.map`.</div><div><br></div><div>What do you think?</div><div><br></div><div><br></div><div>Thanks,</div><div>Ram.</div>