• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Prayer

            在一般中尋求卓越
            posts - 1256, comments - 190, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            復制文件描述符

            Posted on 2009-08-24 10:01 Prayer 閱讀(825) 評論(0)  編輯 收藏 引用 所屬分類: C/C++LINUX/UNIX/AIX
            UNIX提供這種獨有的能力,使一個打開文件描述符可用做兩個(或多個)獨立文件描述符。此外,我們可能選取一個打開文件描述符,并使它對某個特定文件單元號可用(假若該號還未用)
             
            dup(2)和dup2(2)函數的句法如下:
            #include <unistd.h>
            int dup(int oldfd);
            int dup2(int oldfd, int newfd);
             
            在dup(2)的情形,成功時返回文件描述符是當前進程中可用的最低未用文件單元號。然而,對于dup2(2),在參數newfd中指定新的文件描述符值。當dup2(2)成功返回時,return值應與newfd匹配
             
            提示:
            在某些UNIX平臺上,dup(2)和dup2(2)調用可能返回錯誤EINTR(在SGI的IRIX6.5中說明)
             
            有一種情況,dup(2)在其中是有幫助的,就是在打開FILE流以利用現有的套接口時。下例取得套接口s并創建輸入流rx及另一個用于寫的tx流:
             
            int   s;                 /*open  socket*/
            FILE  *rx;               /*read stream*/
            FILE  *tx;               /*write steam*/
             
            ...
             
            rx=fdopen(s,"r");        /*open stream for reading on s*/
            tx=fdopen(dup(s),"w");   /*open stream for writing on s*/
             
            這里dup(2)調用之所以必要,是因為為了以后關閉rx流而進行調用ffclose(3)時,它也關閉文件描述符(套接口)s.  dup(2)調用保證tx流將具有自己要使用的文件描述符,而不管流rx是否仍然打開著。
             
            如果從例子中省略了dup(2),當對tx調用fclose(3)時,tx的緩沖匹中保存的最后數據將不能寫到套接口(假定rx已被關閉了)。原因是下層文件描述符已被關閉。dup(2)調用可以解決另外一個傷腦筋的問題。
             
            99久久99这里只有免费费精品| 久久99热狠狠色精品一区| 久久精品国产99久久香蕉| 欧美日韩中文字幕久久久不卡| 久久热这里只有精品在线观看| 久久久久亚洲AV成人网人人网站 | 亚洲中文字幕无码久久精品1 | 久久精品这里热有精品| 蜜桃麻豆www久久国产精品| 一本大道久久香蕉成人网| 一本色综合网久久| 欧美激情精品久久久久| 麻豆久久久9性大片| 久久精品国产亚洲AV电影| 久久久久18| 久久精品成人国产午夜| 亚洲第一极品精品无码久久| 久久久黄片| 好属妞这里只有精品久久| 一本色道久久99一综合| 超级97碰碰碰碰久久久久最新| 国产精品久久国产精麻豆99网站| 亚洲欧美国产精品专区久久| 亚洲国产成人久久精品动漫| 久久久av波多野一区二区| 久久久高清免费视频| 久久香蕉国产线看观看猫咪?v| 久久国产乱子伦精品免费强| 久久久亚洲AV波多野结衣| 亚洲精品无码久久久| 国产精品丝袜久久久久久不卡| 久久久久久久99精品免费观看| 无码日韩人妻精品久久蜜桃| 精品综合久久久久久97| 日韩欧美亚洲综合久久| 国产香蕉久久精品综合网| 久久有码中文字幕| 久久夜色精品国产噜噜亚洲a| 久久中文字幕人妻熟av女| 久久笫一福利免费导航| 精品久久久久久中文字幕大豆网|