Is it required given the process exits after the fact? It seems that from a user perspective, there should be no difference in semantics whether we flush things or not, even in the event where they catch the timeout.

I guess it reduces some corner cases, but for what could be a very common one where the timer may be done by the time the call is made, there is going to be a very quick `receive` with a leftover message later on.