首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

wait()操作解决方案

2012-02-12 
wait()操作请问下面的程序能否实现,创建4个子进程,每个子进程都打印“HELLO”后立刻终止,父进程等待4个子进

wait()操作
请问下面的程序能否实现,创建4个子进程,每个子进程都打印“HELLO”后立刻终止,父进程等待4个子进程都终止后,打印“BYE”,然后终止
main()
{
  int sv;
  if (fork() == 0) { /* 第一个子进程 */
  printf(”HELLO\n”); /* 打印 */
  exit(0); /* 进程终止 */
  } else if (fork() == 0) { /* 第二个子进程 */
  printf(”HELLO\n”); /* 打印 */
  exit(0); /* 进程终止 */
  }else if(fork()==0){
  printf(”HELLO\n”); /* 打印 */
  exit(0); 
  }else if(fork()==0){
  printf(”HELLO\n”); /* 打印 */
  exit(0); 
  }

  wait(&sv); wait(&sv); wait(&sv);wait(&sv);/* 父进程等待两个子进程终止 */
  printf(”BYE\n”);
}


[解决办法]
可以啊.

父进程每一次返回都继续走下一个if分支.
[解决办法]
wait的参数是status,不是pid..

热点排行