#include<stdio.h> int main() { int p1,p2,p3; long i; while((p1=fork())==-1); if(p1==0) { printf("Child1(PID=%d) is running!\n",getpid()); for(i=0;i<999999;i++); printf("Child1 is over.\n"); } else{ while((p2=fork())==-1); if(p2==0) { printf("Child2(PID=%d) is running!\n",getpid()); for(i=0; i<999999; i++); printf("Childprocess2 is over.\n"); } else{ while((p3=fork())==-1); if(p3==0) { printf("Child3(PID=%d) is running!\n",getpid()); for(i=0; i<999999; i++); printf("Child3 is over.\n"); } else{ for(i=0; i<999999; i++); printf("Parent is over.\n"); } } } return 0; }
时间: 2023-12-01 22:03:37 浏览: 46
根据你的要求,这是上面程序的流程图:
```
开始
|
|----- 创建子进程 p1
| |
| |----- 子进程 p1 执行任务,输出消息
| |
| |----- 创建子进程 p2
| | |
| | |----- 子进程 p2 执行任务,输出消息
| | |
| | |----- 创建子进程 p3
| | | |
| | | |----- 子进程 p3 执行任务,输出消息
| | | |
| | | |----- 子进程 p3 执行完毕,结束
| | |
| | |----- 子进程 p2 执行完毕,结束
| |
| |----- 创建子进程 p3
| | |
| | |----- 子进程 p3 执行任务,输出消息
| | |
| | |----- 子进程 p3 执行完毕,结束
| |
| |----- 父进程执行任务,等待所有子进程结束
| |
| |----- 子进程 p1 执行完毕,结束
|
|----- 程序结束,返回 0
```
在这个流程图中,每个节点代表一个进程的状态,每个箭头代表一个进程的创建或结束。可以看到,该程序共有四个进程:父进程和三个子进程 p1、p2、p3。每个子进程都执行了一个简单的任务,输出一条消息,然后等待一段时间。父进程则等待所有子进程结束后,输出一条结束消息,整个程序执行完毕。
相关推荐
![text/x-c](https://img-home.csdnimg.cn/images/20210720083646.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![application/pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)