Linux fork与vfork的区别

fork和vfork都会创建子进程,它们有什么区别呢?

一、fork:子进程拷贝父进程的数据段

  vfork:子进程与父进程共享数据段

二、fork:父、子进程的执行次序不确定

  vfork:子进程先运行,父进程后运行

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <signal.h>

int main (int argc, char *argv[])
{
  int number = 0;
  pid_t pid;

  pid = vfork();
  number++;
  printf("number %d", number);

  return 0;
}
原文地址:https://www.cnblogs.com/Robotke1/p/3065452.html