Я пытаюсь создать 5 детей и 1 родителя. Но родитель создаст их (по крайней мере 4 из них. Потому что сначала нам нужно развить), но он создает группу детей. Не могу найти, что я делаю неправильно. Любая идея, пожалуйста?Несколько вилок не работают
child0=fork();//first process
if(child0>0)//Parent
{
//Create children
child1=fork();
child2=fork();
child3=fork();
child4=fork();
cout<<"i am child 0 "<<child0 <<" ";
cout<<"i am child 1 "<<child1;
cout<<"i am child 2 "<<child2;
cout<<"i am child 3 "<<child3;
cout<<"i am child 4 "<<child4;
wait(child0);
wait(child1);
wait(child2);
wait(child3);
wait(child4);
}
else if(child0<0)
{
printf("fork() failed!\n");
exit(1);
}
else
{
cout<<"i am child0";
exit(0);
}
Вы выполняете много разветвления без проверки возвращенного идентификатора. многие дети также разводят больше детей. – AndyG