2014-01-23 21 views
-2

我正在试图创建10个进程,但没有扇出,而是在一个链中。因此,过程1是如何使用fork()创建一个进程链?

+0

使用for循环? – xis

+0

不会for循环创建进程的粉丝,虽然 – user3195820

+0

@ user3195820:如果您在新出生的孩子中fork(),则不会。只要跳出父母的循环,让孩子进入下一个迭代。 –

回答

3

这是未经测试:

for(int generation = 0 ; generation < 10 ; ++generation) 
{ 
    int pid = fork(); 
    if(pid != 0) 
    { 
    // Do parental things, including wait 
    break; 
    } 
    // Do childish things before forking. 
} 

每个孩子知道自己的generation

相关问题