创建2个子进程的伪代码
时间: 2024-03-15 11:22:14 浏览: 18
以下是创建两个子进程的伪代码:
```
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main() {
int pid1, pid2;
// Create the first child process
pid1 = fork();
if (pid1 < 0) {
printf("Error: Failed to create first child process.\n");
exit(1);
} else if (pid1 == 0) {
// Child process 1
printf("Child process 1 is running.\n");
// Perform some task
exit(0);
}
// Create the second child process
pid2 = fork();
if (pid2 < 0) {
printf("Error: Failed to create second child process.\n");
exit(1);
} else if (pid2 == 0) {
// Child process 2
printf("Child process 2 is running.\n");
// Perform some task
exit(0);
}
// Parent process
printf("Parent process is waiting for child processes to complete.\n");
// Wait for child processes to complete
waitpid(pid1, NULL, 0);
waitpid(pid2, NULL, 0);
printf("All child processes have completed.\n");
return 0;
}
```
在上述代码中,首先通过调用 fork() 函数创建第一个子进程,然后通过检查返回值确定进程是父进程还是子进程。如果返回值小于 0,则表示创建进程失败;如果返回值等于 0,则表示进程是子进程,可以在子进程中执行某些任务;如果返回值大于 0,则表示进程是父进程,可以继续创建第二个子进程。
接下来,通过调用 fork() 函数创建第二个子进程,同样需要检查返回值以确定进程是父进程还是子进程。
最后,在父进程中等待两个子进程完成,并输出相应的信息。