小编Sha*_*owX的帖子

理解fork()命令Posix API

#include<iostream>
#include<unistd.h>
#include<stdio.h>
using namespace std;
int main()
{
    fork();
    fork();
    fork();
    fork();
    printf("*"); /*This prints 16 stars*/ 
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

在使用时fork(),为什么打印16*?

据我所知,fork()生成一个新的子进程,它们都执行相同的进程,这可以解释为什么一个fork生成2个星,但是,有四个forks它打印16个,我可以看到它每个都加倍fork().

但我不明白为什么.每个fork是否执行下面的函数和参数?

c posix

1
推荐指数
1
解决办法
385
查看次数

标签 统计

c ×1

posix ×1