誰かフォークの働きを詳しく説明してくれませんか
#include<unistd.h>
#include<stdio.h>
int main ()
{
int i, b;
for (i = 0; i < 2; i++) {
fflush (stdout);
b = fork ();
if (b == -1) {
perror ("error forking");
}
else if (b > 0) //parent process
{
wait ();
printf ("\nparent %d", getpid ());
}
else
printf ("\nchild %d %d", getpid (), getppid ());
}
return 0;
}
フォークが親と同じコードを持っている場合、この for ループは子プロセスの作成を停止してはならないことを知っておく必要があります (すべての子は独自の for ループを持ちます)