zoukankan      html  css  js  c++  java
  • pcntl_fork()函数说明

    pcntl_fork()函数复制了当前进程的PCB,
    并向父进程返回了派生子进程的pid,
    父子进程并行,打印语句的先后完全看系统的调度算法,
    打印的内容控制则靠pid变量来控制。
    因为我们知道pcntl_fork()向父进程返回了派生子进程的pid,是个正整数;
    而派生子进程的pid变量并没有被改变,这一区别使得我们看到了他们的不同输出。

    1. 派生子进程的进程,即父进程,其pid不变;
    2. 对子进程来说,fork()函数返回给它0, 但它自身的pid绝对不会是0;
    之所以fork()函数返回0给它,是因为它随时可以调用getpid()来获取自己的pid;
    3. fork之后父、子进程除非采用了同步手段,否则不能确定谁先运行,也不能确定谁先结束。
    认为子进程结束后父进程才从fork返回的,这是不对的,fork不是这样的,vfork才这样。

  • 相关阅读:
    单行道
    学习C++50条忠告
    ROI
    OpenCV(图像处理)—访问像素的三种方法
    毕业课题项目——基于单目摄像头的距离测量
    API
    MFC
    STL
    debug、release
    Android中退出程序的提示框
  • 原文地址:https://www.cnblogs.com/dongruiha/p/7600229.html
Copyright © 2011-2022 走看看