程序通訊之管道通訊

2021-06-22 07:41:49 字數 853 閱讀 5617

管道通訊有乙個特點:通訊是半雙工的,即管道的一端只能讀或者只能寫

管道通訊可以分為:匿名管道通訊和命名管道通訊兩種

1. 匿名管道通訊:適合用於父子程序間的通訊

#include

#include

#include

/*匿名管道通訊,本機父子程序通訊方式

*/int main()

else

waitpid(pid,null,0);

return 0;

}2. 命名管道通訊:用於任何兩個程序間的通訊

#include

#include

#include

#include

#include

#include

#include

/**命名管道

*/#define  fifo "/home/wyz19891024/code/ccode/fifo"

int main()

fd = open(fifo,o_wronly);

while(1)

}return 0;

}/****-----client------****/

#include

#include

#include

#include

#include

#include

#include

/**命名管道

*/#define  fifo "/home/wyz19891024/code/ccode/fifo"

int main()

close(fd);

return 0;

}

程序通訊之管道通訊

管道概念 它把乙個程序的輸出和另乙個程序的輸入連線在一起。乙個程序 寫程序 在管道尾部寫入資料,另乙個程序 讀程序 從管道的頭部讀出資料。分類 1.無名管道 用於父程序和子程序之間的通訊 2.命名管道 用於執行同一系統中的任意兩個程序間的通訊 無名管道 由pipe 函式建立 原型 int pipe ...

linux程序間通訊之管道通訊

一 命名管道通訊 管道通訊分為 無名管道和有名管道 無名管道是用於父子孫程序,之間有血緣關係 有名管道 用於任意兩個程序 無名管道 1 建立 int pipe int filedis 2 它會建立兩個檔案描述符 filedis 0 用於讀管道 filedis 1 用於寫管道 通常先建立乙個管道,再通...

linux程序通訊之管道

管道 可分為普通管道和命名管道。普通管道用於有親緣關係的程序間的通訊 父子程序 命名管道,通過給管道命名的方式,使得管道變成檔案系統中的管道檔案,從而允許無親緣關係的程序間通過訪問管道檔案進行通訊。管道是單向的,一端只能用於輸入,另一端只能用於輸出。管道是fifo的,即先進先出的,向管道中寫入的資料...