1 つの親で 3 つの子プロセスをフォークしたい。そして、以下は私のC++コードです:
#include <unistd.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <iostream>
using namespace std;
int main()
{
pid_t pid;
for (int i = 0; i < 3; i++)
{
pid = fork();
if (pid < 0)
{
cout << "Fork Error";
return -1;
}
else if (pid == 0)
cout << "Child " << getpid() << endl;
else
{
wait(NULL);
cout << "Parent " << getpid() << endl;
return 0;
}
}
}
今私の出力は次のとおりです。
Child 27463
Child 27464
Child 27465
Parent 27464
Parent 27463
Parent 27462
次のような出力を得るには、プログラムをどのように変更すればよいですか?
Child 27463
Child 27464
Child 27465
Parent 27462
私が言いたいのは、これらの 3 人の子供は同じ 1 つの親に属している必要があるということです。
皆さん、ありがとうございました。:)