That is true. I find it doesn't matter terribly much in practice though. Obviously with some programs it might.
"your output process might not get around to reading its input ends until it has data at both, and then it can't tell which is which."
I'm not quite sure what you mean.