fork()函数
计算机程序设计中的分叉函数
返回值: 若成功调用一次则返回两个值,子进程返回0,父进程返回子进程标记;否则,出错返回-1。
fork函数将运行着的程序分成2个(几乎)完全一样的进程,每个进程都启动一个从代码的同一位置开始执行的线程。
这两个进程中的线程继续执行,就像是两个用户同时启动了该应用程序的两个副本(是副本人所以内存不共享)
打印出来三个A,,创建了三个进程,,如
int main(int argc,char*crgv[],char*envp[])

{
    for(int i=0;i<2;i++)

    {

           fork();
           printf("A\n");     
    }
   exit(0);
}

这个会打印出6个A,      
以上代码可以拆分成如下代码
int main()
{
    int i=0;
    fork();
    printf("A\n");

   int i=1;
  fork();
  printf("A\n");
 
 exit(0);
}
这样就很好分析了!!!





这个代码是把上面的
fork();和printf()两个函数换了位置,,,结果输出三个A;


                                                                                                                                                                                                                                                                                                                                         

    


阅读更多
想对作者说点什么? 我来说一句

fork 函数详解

2012年12月15日 67KB 下载

没有更多推荐了,返回首页

不良信息举报

fork()函数

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭