申请两个管道,to-child to-par
然后父子进程作如下处理:
//子进程在此执行
close(O); //关闭旧的标准输入
dup(to—child[0]); //将管道的读复制到标准输入
close(1); //关闭旧的标准输出
dup(to—par[1]); //将管道的写复制到标准输出
close(to—par[1]); //关闭不必要的管道描述符
close(to—child[0]);
close(to—par[0]);
close(to-child[1]);
父进程跟子进程类似。
不明白为什么从新设置好父子各自标准IO以后,为什么要有
close(to—par[1]); //关闭不必要的管道描述符
close(to—child[0]);
close(to—par[0]);
close(to-child[1]);
请大家赐教。 |