c - 父代码在 C 中的多进程程序中被调用两次
问题描述
我一直在学习 c 中的 fork,我有这个程序:
int main(void) {
int i;
printf("Start program\n");
printf("This is parent process %d: %d\n", getpid(), i);
int pid = fork();
printf("%d ", pid);
if(pid == 0) {
printf("This is process %d: %d\n", getpid(), i);
}
return 0;
}
这是输出:
Start program
This is parent process 4467: 0
4578 Start program
This is parent process 4467: 0
0 This is process 4578: 0
我不明白为什么父代码被调用两次。
解决方案
推荐阅读
- jquery - 如何使用 jQuery 删除名称无效的属性
- javascript - 语法错误:意外的标记 '<'
- javascript - 按行 txt 文件拆分字符串 - 行数错误?
- sql-server - 使用 sequelize 模型将 NUMERIC 转换为 VARCHAR
- vba - 使用手动计算的 Worksheet_Change (Application.Calculation = xlManual)
- python - 磁盘使用脚本
- sql - SQL - 总计数
- tensorflow-datasets - tf.dataset.prefetch() buffer_size 含义
- r - 如何使用 ggplot2 在 R 中绘制钻石?
- eclipse - Eclipse 在我的类路径中找不到类