在linux中如何通过fork函数构造父子进程树 demo3---demo3---demo3---demo3---demo3---demo3---demo3---demo3---demo3---demo3
时间: 2024-04-24 15:18:39 浏览: 80
简单掌握Linux系统中fork()函数创建子进程的用法
在Linux中,可以使用fork函数来创建父子进程树。fork函数会创建一个新的进程,该进程是调用fork函数的进程的副本。以下是通过fork函数构造父子进程树的示例代码:
```c
#include <stdio.h>
#include <unistd.h>
void create_process(int level) {
if (level == 0) {
printf("demo3\n");
return;
}
pid_t pid = fork();
if (pid < 0) {
printf("Fork failed\n");
return;
} else if (pid == 0) {
create_process(level - 1);
return;
} else {
wait(NULL);
printf("demo3\n");
return;
}
}
int main() {
int level = 10;
create_process(level);
return 0;
}
```
在上述代码中,create_process函数用于递归地创建父子进程。当level为0时,打印出"demo3";否则,通过fork函数创建一个子进程,并在子进程中再次调用create_process函数。父进程会等待子进程执行完毕后再打印出"demo3"。
阅读全文