[Linux进程]使用vfork创建子进程并且执行命令

发布时间:2020-07-17 14:07:33 作者:银河星君
来源:网络 阅读:679
/*这是一个其分别利用子进程和父进程对一个count进行计数并且输出,
用于展示父进程和子进程是共享一个数据段*/
#include <sys/types.h>
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
int main (int argc,char *argv[])
{
   int count = 1;
   int child;
   printf("此时执行的是父进程,当前count的值是:%d\n", count);   //创建子进程之前
   if(!(child = vfork()))   //创建子进程
     {  
        //由于子进程会首先执行,以下为子进程执行过程
        int i;
        for(i = 0; i < 100; i++)
          {
             printf("这是子进程, 当前i的值是: %d\n", i);   //反复输出打印结果
             if(i == 8)
             exit(1);
          }
         printf("这是子进程,其进程ID是%d count的值是: %d\n", getpid(), ++count);
         exit(1);  //退出子进程
      }
    else
     {  //父进程执行区
         printf("这是父进程,其进程ID是%d count的值是: %d, 其子进程是: %d\n", getpid(), count, child);
      }
return 0;
}


推荐阅读:
  1. [Linux管道和IPC]使用信号量和共享内存进行父子进程通信
  2. Mysql怎么适当的添加索引

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux进程 fo

上一篇:mysql判断数据表是否存在的方法

下一篇:Springboot如何处理CORS跨域请求

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》