_13_管道_映射

=======================================================================

                    用于进程间通信的管道

=======================================================================

pipe函数

摘自:https://blog.csdn.net/oguro/article/details/53841949

  #include <unistd.h>

  int pipe(int pipefd[2]);

  描述: 父进程调用pipe函数创建管道,得到两个文件描述符fd[0]、fd[1]指向管道的读端和写端

      父进程关闭管道读端,子进程关闭管道写端。父进程可以向管道中写入数据,子进程将管道中的数据读出

  上面在close(fd[1])是因为,管道是单向的,只有一个进程关了写,一个进程关了读,才能实现数据的传输

  但是我们的子进程没有加sleep,就是说,有可能子进程都结束了,父进程还没写入数据进去,那为什么不会出错呢

  因为读管道的时候如果没有数据,便会阻塞,所以能确保能到父进程传来的数据,具体看摘自,那个比较详细

  

猜你喜欢

转载自www.cnblogs.com/huangtiandi/p/9170332.html
今日推荐