| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 541 人关注过本帖
标题:求解!为什么多次连续执行会出现不一样的结果?为什么呀?
只看楼主 加入收藏
qingchundeji
Rank: 2
等 级:论坛游民
帖 子:31
专家分:83
注 册:2012-4-22
收藏
 问题点数:0 回复次数:2 
求解!为什么多次连续执行会出现不一样的结果?为什么呀?
#include<stdio.h>
main()
{
   int p1,p2,i;
   while ((p1=fork())==-1);
   if(p1==0)
           for(i=0;i<3;i++)
                 printf("daughter %d\n",i);
   else
       {
          while((p2=fork())==-1);
          if(p2==0)
               for(i=0;i<5;i++)
                     printf("son %d\n",i);
          else
               for(i=0;i<4;i++)
                     printf("parent %d\n",i);
        }
}
2012-04-23 22:15
草狼
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:2
帖 子:577
专家分:1040
注 册:2010-4-6
收藏
得分:0 
父子进程执行的顺序是不确定的,所以每次执行都会出不同的结果
2012-04-23 22:27
qingchundeji
Rank: 2
等 级:论坛游民
帖 子:31
专家分:83
注 册:2012-4-22
收藏
得分:0 
回复 2楼 草狼
哦哦!明白。进程是独立的,所以调动谁都是可能的。

2012-04-23 23:00
快速回复:求解!为什么多次连续执行会出现不一样的结果?为什么呀?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024923 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved