首页 > 系统服务 > 详细

多任务编程 -- 基于fork的多进程编程

时间:2020-05-17 11:35:43      阅读:54      评论:0      收藏:0      [点我收藏+]

fork使用

语法:

  1. pid = os.fork()
  2. 功能:创建新的进程
  3. 返回值:整数
    1. 负数:代表创建进程失败;
    2. 0与正整数:代表创建成功
      1. 正整数:在原有进程中,返回新进程的PID
      2. 0:在新进程中,返回0

代码示例:

import os

pid = os.fork()

if pid < 0:
    print("Create process failed")
elif pid == 0:
    print("The new process")
else:
    print("The old process")

print("Fork test over")

代码详解:

  1. 图解:
    1. 技术分享图片

       

    2. 技术分享图片

       

注意:

  • 子进程会复制父进程全部内存空间,从fork下一句开始执行;
  • 父子进程各自独立运行,运行顺序不一定;
  • 利用父子进程fork返回值的区别配合if结构,让父子进程执行不同的内容,几乎是固定搭配
  • 父子进程有各自特有特征,比如:PID、PCB命令集等;
  • 父进程fork之前,开辟的内存空间,子进程同样拥有父子进程对各自内存空间的操作不会相互影响

 

技术分享图片

 

多任务编程 -- 基于fork的多进程编程

原文:https://www.cnblogs.com/gengyufei/p/12904349.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!