うがー
stdinをそのまま子プロセスのstdinに与えて、子プロセスのstdoutは適当にpipeで読み出せるようにしてあるとする。
親 | 子 stdin ====|===> stdin pipe <===|==== stdout
標準入力からCtrl-Dを送ると、子プロセスはEOFを読み込んでいろいろ処理した後、exit(0)で終了する。この時点で子のstdoutはfcloseされていると思う。
つまり、プロセスが終了した後でpipeからinput_lineとかしたときには、End_Of_Fileが欲しいのだが、なぜかブロックしてしまう。End_Of_Fileしてくれるもんだと思ってたんだが。