<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ## mkfifo ## 建立具名管道 ### 相關函數 ### pipe,popen,open,umask ### 表頭文件 ### ``` #include<sys/types.h> #include<sys/stat.h> ``` ### 定義函數 ### ``` int mkfifo(const char *pathname, mode_t mode); ``` ### 函數說明 ### mkfifo()會依參數pathname建立特殊的FIFO文件,該文件必須不存在,而參數mode為該文件的權限(mode%~umask),因此umask值也會影響到FIFO文件的權限。Mkfifo()建立的FIFO文件其他進程都可以用讀寫一般文件的方式存取。當使用open()來打開FIFO文件時,O_NONBLOCK旗標會有影響 1、當使用O_NONBLOCK 旗標時,打開FIFO 文件來讀取的操作會立刻返回,但是若還沒有其他進程打開FIFO 文件來讀取,則寫入的操作會返回ENXIO 錯誤代碼。 2、沒有使用O_NONBLOCK 旗標時,打開FIFO 來讀取的操作會等到其他進程打開FIFO文件來寫入才正常返回。同樣地,打開FIFO文件來寫入的操作會等到其他進程打開FIFO 文件來讀取后才正常返回。 ### 返回值 ### 若成功則返回0,否則返回-1,錯誤原因存于errno中。 ### 錯誤代碼 ### EACCESS 參數pathname所指定的目錄路徑無可執行的權限 EEXIST 參數pathname所指定的文件已存在。 ENAMETOOLONG 參數pathname的路徑名稱太長。 ENOENT 參數pathname包含的目錄不存在 ENOSPC 文件系統的剩余空間不足 ENOTDIR 參數pathname路徑中的目錄存在但卻非真正的目錄。 EROFS 參數pathname指定的文件存在于只讀文件系統內。 ### 范例 ### ``` #include<sys/types.h> #include<sys/stat.h> #include<fcntl.h> main() { char buffer[80]; int fd; unlink(FIFO); mkfifo(FIFO,0666); if(fork()>0){ char s[ ] = “hello!\n”; fd = open (FIFO,O_WRONLY); write(fd,s,sizeof(s)); close(fd); } else{ fd= open(FIFO,O_RDONLY); read(fd,buffer,80); printf(“%s”,buffer); close(fd); } } ``` ### 執行 ### ``` hello! ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看