建立有名管道

2021-06-16 09:09:06 字數 578 閱讀 8842

有名管道fifo管道在檔案系統中是可見的

建立函式

#include

#include

int mkfifo(const char * filename,mode_t mode);

mode 用來指定建立的管道的讀寫執行許可權,一般設定為mode_t mode = 0666;

利用命令列中乙個引數來建立乙個有名管道

#include

#include

#include

#include

#include

int main(int argc, char * argv)

mode_t mode=0666;

if(argc!==2)

printf("please input the file name\n");

exit(1);

}if(mkfifo(argv[1],mode)<0)

printf("create false\n");

exit(1);

}else

printf("ok");

}return 0;

}

mkfifo函式建立有名管道

pipe建立的管道只能在具有共同祖先的程序間通訊,而mkfifo能在不相關的程序間交換資料。通俗舉例來說,乙個在乙個c檔案中通訊,乙個可在多個c檔案中通訊。命名管道開啟的規則 為讀開啟fifo o nonblock disable 阻塞直到有相應程序為寫而開啟fifo o nonblock enab...

管道及有名管道

管道和有名管道是最早的程序間通訊機制之一,管道可用於具有親緣關係程序間的通訊,有名管道克服了管道沒有名字的限制,因此,除具有管道所具有的功能外,它還允許無親緣關係程序間的通訊。認清管道和有名管道的讀寫規則是在程式中應用它們的關鍵,本文在詳細討論了管道和有名管道的通訊機制的基礎上,用例項對其讀寫規則進...

有名管道管道程式設計

linux程序和程序之間有多種通訊方式。linux程序間通訊的主要方式有 1 無名管道 2 有名管道 3 訊號 4 訊息佇列 5 共享記憶體 6 訊號量 7 套接字 管道操作是比較簡單的通訊方式,乙個程序往管道中寫入資料,另乙個程序從管道中讀出資料。管道包括無名管道和有名管道。前者只能用於父程序和子...