免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1838 | 回复: 1
打印 上一主题 下一主题

[函数] 关于判断多个子进程结束waitpid函数,请高手帮忙!在线等待 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-12-18 13:01 |只看该作者 |倒序浏览
我如果在主进程中判断所有的进程都结束了?程序如下:
main()
{
     switch( pid = fork() )
     {
      case -1 :   //失败
    case 0:     fork1();  exit(0);
      default:    break;
      }

       witch( pid = fork() )
     {
      case -1 :   //失败
    case 0:     fork2();  exit(0);
      default:    break;
      }

// 当2个子进程结束后,开始执行以下代码
// 判断子进程结束
//一般用
while( ( pid = waitpid( -1, &stat, WNOHANG ) ) >; 0 );
  /****代码处********/
}

但是不知道为什么”while( ( pid = waitpid( -1, &stat, WNOHANG ) ) >; 0 );“这段代码编译不过去?
另外,能否解释一下这段代码的语法含义?
请各位高手帮忙,在线等待!

论坛徽章:
0
2 [报告]
发表于 2006-12-18 13:12 |只看该作者
while( ( pid = waitpid( -1, &stat, WNOHANG ) ) >; 0 );
应该是: >= 吧?

waitpid()会暂时停止目前进程的执行,直到有信号来到或子进程结束
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP