C fork()执行序列?
hi将打印多少次? fork的执行顺序是什么? os:linux编译器:gcc问题1:hi将打印多少次 所以 若所有的fork都运行良好,那个么总共创建了8个进程,所以在输出中将有8个或更少的hi 问题2:fork的执行顺序是什么?os:linux编译器:gcc 没有任何保证哪一个进程将被安排在第一个和第二个。C fork()执行序列?,c,linux,gcc,linux-kernel,C,Linux,Gcc,Linux Kernel,hi将打印多少次? fork的执行顺序是什么? os:linux编译器:gcc问题1:hi将打印多少次 所以 若所有的fork都运行良好,那个么总共创建了8个进程,所以在输出中将有8个或更少的hi 问题2:fork的执行顺序是什么?os:linux编译器:gcc 没有任何保证哪一个进程将被安排在第一个和第二个。 这完全取决于调度程序 fork可能会失败,因此您无法确定答案。阅读有几章解释的内容。答案不会是固定不变的。如果每个叉子都很好,它将是8。不是重复的,而是相关的:它的质量很低。一个简单的搜
这完全取决于调度程序 fork可能会失败,因此您无法确定答案。阅读有几章解释的内容。答案不会是固定不变的。如果每个叉子都很好,它将是8。不是重复的,而是相关的:它的质量很低。一个简单的搜索就会得到答案。
int main () {
fork ();
fork ();
fork ();
pf (" hi\n");
}
Due to first Fork
|
-------------------------
| |
Due to second fork Due to second fork
| |
---------------------- ----------------------------
| | | |
Due to 3rd fork Due to 3rd fork Due to 3rd fork Due to 3rd fork
| | | |
------------------ --------------- ---------- ------------
| | | | | | | |
process-1 process-2 process-3 process-4 pr-5 pr-6 process-7 process-8