[Linux進(jìn)程]在父進(jìn)程和子進(jìn)程中分別修改變量

/*這是一個調(diào)用fork函數(shù)創(chuàng)建一個子進(jìn)程,然后分別打印輸出子進(jìn)程
和父進(jìn)程中的變量的實(shí)例*/
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
int  glob = 6;  //外部變量
int  main(void)
{
        int     var;    //內(nèi)部變量
        pid_t   pid;    //文件標(biāo)識符
        var = 88;	//內(nèi)部變量
        printf("創(chuàng)建新進(jìn)程之前。\n");    //還沒有創(chuàng)建子進(jìn)程
        if ((pid = fork()) < 0)          //如果創(chuàng)建子進(jìn)程失敗
        {
          perror("創(chuàng)建子進(jìn)程失敗!");
        }
        else if (pid == 0)          //現(xiàn)在是子進(jìn)程
        {                           
          glob++;                   //在子進(jìn)程中修改變量值
          var++;
        }
        else                        //現(xiàn)在是父進(jìn)程
        {
          sleep(2);                 //父進(jìn)程阻塞2秒
        }
        printf("進(jìn)程標(biāo)識符為= %d, glob = %d, var = %d\n", getpid(), glob, var);  
        //分別在子進(jìn)程和輸出兩個變量的值
        exit(0);
}

當(dāng)前名稱:[Linux進(jìn)程]在父進(jìn)程和子進(jìn)程中分別修改變量
URL分享:http://muchs.cn/article42/ghechc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)網(wǎng)站導(dǎo)航、網(wǎng)站維護(hù)、電子商務(wù)、做網(wǎng)站企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化