C语言创建3个进程
时间: 2024-01-11 13:07:59 浏览: 33
在 C 语言中,可以通过多次调用 `fork()` 函数来创建多个子进程。下面是一个简单的示例代码,可以创建三个子进程并分别输出它们的进程 ID:
```c
#include <stdio.h>
#include <unistd.h>
void worker() {
printf("Child process ID: %d\n", getpid());
}
int main() {
pid_t pid1, pid2, pid3;
// 创建第一个子进程
pid1 = fork();
if (pid1 == 0) {
// 子进程1
worker();
return 0;
} else {
// 创建第二个子进程
pid2 = fork();
if (pid2 == 0) {
// 子进程2
worker();
return 0;
} else {
// 创建第三个子进程
pid3 = fork();
if (pid3 == 0) {
// 子进程3
worker();
return 0;
} else {
// 等待三个子进程结束
waitpid(pid1, NULL, 0);
waitpid(pid2, NULL, 0);
waitpid(pid3, NULL, 0);
return 0;
}
}
}
}
```
在上面的代码中,通过多次调用 `fork()` 函数来创建三个子进程。执行上述代码,可以看到三个子进程的进程 ID 分别输出。