随笔分类 -  IPC

命名管道(FIFO)
摘要:命名管道解决了管道的一个问题,它除了可以用在有亲缘关系的进程间,也可用在无亲缘关系的进程间。它也仅仅解决了这个问题。读写操作的特点:1、同管道一样,单向字节流;2、open FIFO只读,若现有write端打开,则成功返回;否则,阻塞模式将一直阻塞到打开写,非阻塞模式正常返回;3、open FIFO只写,若现有read端打开,则成功返回;否则,阻塞模式将一直阻塞到打开读,非阻塞模式正常返回;4、对于空的FIFO,情形与空管道类似。看一个例子:server_fifoclient_fifo 1 #include "unpipc.h" 2 3 int main(int argc, 阅读全文

posted @ 2013-04-22 20:49 逆转的旋律 阅读(367) 评论(0) 推荐(0)

管道(Pipe)
摘要:管道是Unix的传统IPC机制之一,特点是:1、仅用于有亲缘关系的进程之间;2、单向数据流,即打开一个管道,一端仅用于读,另一端仅用于写;3、传递的是字节流;4、对它的read总是从头部返回数据,对它的write总是从尾部添加数据;5、对于空管道: a. 写端打开,阻塞read将一直阻塞到管道有数据(可以是EOF);非阻塞read返回EAGAIN; b. 写端未打开,read返回0; c. 读端未打开,write操作产生SIGPIPE。例子:1、父子进程间通信。(子进程传递一个文件名给父进程,由父进程打开文件并将数据传给子进程)pipe 1 #include "unpipc.h&qu 阅读全文

posted @ 2013-04-22 20:10 逆转的旋律 阅读(474) 评论(0) 推荐(0)

导航