1
我不確定在這個程序中要創建多少個進程?我想在while循環中會創建三個子進程。然後,每個子進程將分叉兩次,這意味着將有兩個子進程加上由該子進程創建的進程也將分叉,並且每個狀態將有4個子進程。總共有12個過程。真的嗎?這段代碼要生成多少個進程?
#include <unistd.h>
#include <sys/types.h>
#include <stdio.h>
#include <stdlib.h>
int main(){
pid_t childpid;
int i=0;
while((childpid>0) && (i<3))
{
childpid=fork();
i++;
}
if(childpid==0){
fork();
fork();
}
exit(0);
}
在紙上跟蹤它。這是我在Uni學習操作系統設計時做過的事情 – StoryTeller
我想我上週已經看到了這段代碼...... –
'pid_t childpid = getpid();'缺少。 – jfs