• <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++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            fork() 共享

            Posted on 2009-04-15 23:10 Prayer 閱讀(431) 評論(0)  編輯 收藏 引用 所屬分類: LINUX/UNIX/AIX
            pid_t pid;
            int stat_loc;
            /*父進程*/
            if ((pid=fork())>0) {
            waitpid(pid,&stat_loc,0);
            /*父進程等待進程號為pid的子進程的返回*/
            }
            else {
            /*子進程的處理過程*/
            exit(1);
            }
            /*父進程*/
            printf("stat_loc is [%d]\n",stat_loc);

            子進程fork返回0。理由:隨時可以調(diào)用getpid()知道自己的pid是多少,所以沒必要fork返回pid

            QUOTE:
            原帖由 dida_327 于 2005-12-14 15:46 發(fā)表
            pid_t pid;
            int stat_loc;
            /*父進程*/
            if ((pid=fork())>0) {
            waitpid(pid,&stat_loc,0);
            /*父進程等待進程號為pid的子進程的返回*/
            }
            else {
            /*子進程的處理過程*/
            exit(1);
            }
            /*父 ...

            你這段程序有問題吧,其實fork很簡單,
            1、返回兩次,向父進程返回PID,向自己返回0;
            2、子進程拷貝交進程數(shù)據(jù)段、堆區(qū)、棧區(qū);(不過大多采用寫時復(fù)制技術(shù)),一般來講,共享正文段;

            所以,一般是這樣的:
            pid=fork();
            if(pid>0)           //父
            {
            }
            else if(pid==0)  //子
            {
            }
            else    //出錯
            {
            }

            以下為父子共享的(前提是父/子中沒有退出^o^)
            所以,剩下的就是同步與互斥的問題了,扯遠了。個人覺得《Unix環(huán)境高級編程》第8章開始那個例子,又簡單又經(jīng)典!


            其實所有的代碼父子進程都是共享的,
            就連 if ( pid > 0 ) else 也是。

            原帖由 思平 于 2005-12-15 15:36 發(fā)表
            其實所有的代碼父子進程都是共享的,
            就連 if ( pid > 0 ) else 也是。

            正因為是所有共享,才需要這樣的判斷噻,否則就用不著了……


            国产午夜福利精品久久| 亚洲国产精品无码久久久久久曰| 91精品国产综合久久久久久| 一级做a爰片久久毛片16| 国产精品美女久久福利网站| 久久国产精品99久久久久久老狼| 久久中文精品无码中文字幕| 99久久人妻无码精品系列| 思思久久99热只有频精品66| 久久精品国产亚洲网站| 久久免费看黄a级毛片| 国产精品九九久久免费视频 | 亚洲精品无码久久久久| 亚洲国产成人久久综合碰碰动漫3d| 久久久久国产精品嫩草影院| AV无码久久久久不卡网站下载| 久久亚洲国产成人影院网站| 久久福利青草精品资源站| 人妻无码中文久久久久专区| 久久久久久久免费视频| 国产精品热久久无码av| 亚洲国产精品久久久久久| 色综合久久久久久久久五月| 国内精品久久久久影院老司| 色婷婷综合久久久久中文字幕| 91精品观看91久久久久久 | 久久国产色AV免费观看| 香蕉久久AⅤ一区二区三区| 国产午夜福利精品久久| 国产精品热久久毛片| 久久99精品久久久久久齐齐| 99久久精品国产一区二区三区| 99久久无码一区人妻a黑| 97久久香蕉国产线看观看| 99久久99这里只有免费费精品| 人妻精品久久无码专区精东影业| 亚洲精品无码久久久久久| 久久久久久午夜成人影院| 成人久久综合网| 精品久久人人爽天天玩人人妻| 精品久久综合1区2区3区激情|