使用open開啟FIFO檔案

2021-06-07 12:12:14 字數 943 閱讀 6174

#include

#include

#include

#include

#include

#include

#include

#define fifo_name "/tmp/my_fifo"

int main(int argc,char *argv)

argv++;

if(strncmp(*argv,"o_rdonly",8)==0) open_mode|=o_rdonly;

if(strncmp(*argv,"o_wronly",8)==0) open_mode|=o_wronly;

if(strncmp(*argv,"o_nonblock",10)==0) open_mode|=o_nonblock;

argv++;

if(*argv)

if(access(fifo_name,f_ok)==-1)

}printf("process %d opening fifo\n",getpid());

res=open(fifo_name,open_mode);

printf("process %d result %d\n",getpid(),res);

sleep(5);

if(res!=-1) (void)close(res);

printf("process %d finished\n",getpid());

exit(exit_success);

在本程式中,

第乙個程序先讀取

管道資料,但

當管道資料為

空時,程序

並不占用cpu資源,

當第二個

程式啟動

之後第乙個

程序繼續執行,

這樣子可以

是兩個程式

進行同步,且

節約資源

python 開啟檔案 open

三 檔案讀寫定位操作 讀 f.read size 如果沒有size即f.read 一次性讀取檔案全部內容,返回型別str 如果有size即f.read 50 讀取最多的位元組內容 1.檔案很小,可一次性讀取,檔案較大,超過記憶體大小,內容爆掉 2.檔案過大,可用f.read size x為每次最多讀...

檔案開啟時open系統呼叫

靈雲星火 1 檔案開啟時open系統呼叫 open建立了一條到檔案或裝置的訪問間的路徑。如果呼叫成功,它將返回乙個可以被read,write和其他系統呼叫使用的檔案描述符。這個檔案描述符是唯一的,它不會與任何執行的程式共享。如果兩個程式開啟聽乙個檔案,也返回不同的描述符。如果他們都對檔案進行寫操作,...

C語言 開啟檔案open函式

函式說明 引數mode 則有下列數種組合,只有在建立新檔案時才會生效,此外真正建檔案時的許可權會受到umask 值所影響,因此該檔案許可權應該為 mode umaks s irwxu00700 許可權,代表該檔案所有者具有可讀 可寫及可執行的許可權.s irusr 或s iread,00400 許可...