当前位置:   article > 正文

fork()进程复制简单例题,僵尸进程,孤儿进程_fork复制进程缓冲区

fork复制进程缓冲区

刷新缓冲区:

1.程序结束前

2.碰见换行符\n

3.碰见fflush() fflush(stdout);

4.缓冲区满了

return:关键字 结束当前功能

exit:函数调用 结束进程前刷新缓冲区再调用_exit exit(0)正常退出,非零异常退出

_exit:内核级别函数 只结束程序不会刷新缓冲区

fork() 进程复制(除了进程PID所有内容状态全复制)

返回值为pid_t —>int的重命名 父进程返回值大于0,子进程返回值小于0 -1复制失败

头文件为 #include<unistd.h> #include<sys/types.h>

fork复制后,子进程从fork后的语句开始执行

示例1:

  1. int main()
  2. {
  3. printf("a\n");
  4. fork();
  5. }

打印一个a 父进程遇见\n直接刷新缓冲区打印a,fork复制一份后子进程从fork以下的语句继续执行,fork后没有语句程序结束

示例2:

  1. int main()
  2. {
  3.    fork();
  4. printf("a\n");
  5.    return 0
  6. }

打印两个a fork复制一份,父进程向下执行打印一个a,子进程执行fork以下的

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/210695
推荐阅读
相关标签
  

闽ICP备14008679号