It's not my code, it's from the IPC::Run example. Thank you for the pointer, though. I will look into that. | [reply] |
Responding to my own post is so awfully tacky, but if I add this before my for loop in wr2, my example works:
$| = 1;
Now I'll see if I can figure out the rest. | [reply] [d/l] |
Finally, I kept getting "process ended prematurely at /home/cwood/bin/pr2 line 46" in my more involved work elsewhere. I printed the parent's output (child's input) at the parent, and that helped me discover a stray "exit 0" leftover from when my child was a script forked with each execution.
Similarly a "print 123" without the "\n" would have caused an apparent IPC freeze if I was checking for /\n/ in the parent's input (child's output).
So two answers:
- unbuffered output on the child
- watch for leftovers from previous techniques on parent and child
| [reply] |