Linux 我如何分叉并保留所需的进程数?

Linux 我如何分叉并保留所需的进程数?,linux,process,fork,Linux,Process,Fork,假设我想创建3个进程,我做了3次,我将有7个进程。我只想保留3个进程,而不是原来的父进程。有什么办法吗?我必须使用fork()只需在父级中使用三次fork,您最终会得到如下流程图: parent _________|_________ | | | c1 c2 c3 Fork,检查你是否在父母中,如果你再次是Fork,重复 要对n个进程执行此操作,请执行以下操作: for(int i = 0; i < 3; i++)

假设我想创建3个进程,我做了3次,我将有7个进程。我只想保留3个进程,而不是原来的父进程。有什么办法吗?我必须使用
fork()

只需在父级中使用三次fork,您最终会得到如下流程图:

        parent
 _________|_________
 |        |        |
c1        c2       c3
Fork,检查你是否在父母中,如果你再次是Fork,重复

要对n个进程执行此操作,请执行以下操作:

for(int i = 0; i < 3; i++) {
  if(!fork()) {
    //In child
    break;
    //Child code
  }
}
for(int i=0;i<3;i++){
如果(!fork()){
//在儿童时期
打破
//子代码
}
}

ok适用于三个进程,但有没有办法将其应用于k个进程?非常感谢你。