fork函数
头文件
#include <unistd.h>
函数原型
pid_t fork(void);
返回值
- 成功:正整数
- 失败:-1
fork函数特征
fork函数执行之后会返回两次,在初始进程中执行fork函数后,会创建一个新的进程,而且这个新的进程会几乎复制旧进程的所有东西,为什么是几乎呢?在执行fork函数之前操作系统只有一个进程,那fork之前的代码就只会执行一遍。调用fork函数之后,产生新进程,会把fork函数之后的代码复制一遍,所以fork之后的代码才会执行两次。
- 在老的进程中执行成功返回新进程的pid,子进程执行成功返回值是0
举例
#include <unistd.h>
#include <stdio.h>
int main()
{
pid_t i;
printf("before fork!\r\n");
i = fork();
printf("after fork i = %d\n",i);
return 0;
}

这篇博客介绍了Linux系统中的fork函数,它是创建新进程的关键。通过fork,原有进程会复制自身形成一个新的进程,两者共享大部分资源但拥有独立的进程ID。博客详细阐述了fork函数的工作原理,包括返回值的含义,以及一个简单的示例代码展示如何在父进程和子进程中分别进行操作。
9061

被折叠的 条评论
为什么被折叠?



