On Sun, 2021-07-25 at 15:25 -0400, Paul Smith wrote: > There's no reason that those two disjoint sets of output need to be > synchronized WITH EACH OTHER to meet the goal of the -O option. Given > the choice between allowing output to go to these two different > locations in parallel vs. serializing them with each other, I don't > think anyone would prefer the latter.
In any event, what I'm really trying to say is this: locking stdout rather than some other way of lock sharing was done quite deliberately and intentionally and does provide tangible benefits that can't be easily duplicated using other locking methods. It wasn't just a careless implementation choice. Maybe those benefits don't outweigh the problems they cause, or maybe they do. But either way it needs to be considered.