在fork()中,当创建子进程时,通常父进程等待子进程完成,所以我想知道如果必须等待空闲而不是自己完成作业,那么创建子进程的原因是什么?我试着读一些关于它的东西但是对我来说更加困惑
你很困惑:父母可能会"等待"孩子,但并不一定意味着它在等待之前什么都不做.父母做了它的事情,然后叫等待.如果孩子已经完成,则等待立即返回,否则父母可能在一段时间内处于空闲状态(即,不会被安排由操作系统执行),直到孩子实际完成为止.
例如:绿色的父母将孩子用黄色分叉.孩子可以在父母等待之前或之后完成:
有些情况要求父母不做任何事情,例如它产生了许多工人流程,然后等待他们全部完成,因此只是作为经理......