2016-11-10 166 views
1

每当我读到fork()产生的C子进程时,父进程等待子进程完成。但是,我面临着另一个问题:我想生成两个孩子,然后让他们等到父母给他们工作。等待子进程

f.example: 在客户端:

fork() two children

in parent, connect to a server 
server returns some work to do 
parents hands work over to children 

我怎样才能做到这一点? 我不是要求大量的代码,只是一些指导,也许是一些代码来解释。

+1

父母的管道可以通过管道与孩子通话(2) –

+1

他们需要一种方式与父母沟通。这被称为进程间通信(IPC)。在UNIX上,对于直接分支的chuld,这通常是一个管道。 –

+1

让孩子从良好的旧管道或消息队列中读取消息,然后将其置入睡眠状态,直至消息可用。 – PSkocik

回答

0

你想要的是父进程与子进程之间的进程间通信(IPC)。这是非常普遍的。

如果您想要与子进程进行通信,您需要使用。 Unix/C通过pipe(2)使用管道。