> or rendezvous
i'm not sure rendezvous is an option here (you've no control over the child process after execing it), and even if you did (e.g. by doing the wait in another process), it still doesn't get around the fact that when the data's large you need to be reading it at the same time that the child is writing it - there's no appropriate time to rendezvous.
