OpenVINOTM,给你看得见的未来!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » 软件与操作系统 » linux进程之子进程创建之vfork函数的使用(二)

共1条 1/1 1 跳转至

linux进程之子进程创建之vfork函数的使用(二)

专家
2016-01-19 19:39:21    评分

在Linux系统中,除了fork()可以创建子进程之外,还有vfork()可以创建子进程,为了弄清楚这两个函数创建子进程有何区别,首先我们来看如何利用vfork()进行子进程的创建:

#include
#include
#include
#include

int main()
  {
    pid_t pid;
    pid = vfork();
    if(pid == 0)
	    printf("the child ID  = %d \n",getpid());
    if(pid > 0)
	    printf("the father ID = %d \n",getpid());
    if(pid < 0) printf("fork failed");
   return 0; } 



在cygwin中运行,结果如下:


carl.ma@CNQDSX-000211 ~/3_vfork
$ ./vfork.exe
the father ID = 10236
the child ID  = 8324


从运行结果上看,fork()和vfork()都可以创建子进程,二者同时成功的创建了子进程,那么二者有什么区别和联系呢?



共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]