当前位置: 首页 > news >正文

子进程的创建 ─── linux第10课

目录

进程 = 内核数据结构+代码和数据

fork 创建子进程

​编辑

创建多进程

理解子进程的创建(总结)


进程 = 内核数据结构+代码和数据

一个进程只有一个唯一父进程,但可以拥有多个子进程,因此进程是树形结构.

fork 创建子进程

父子进程代码共享,数据各自私有的原因

因为数据私有可以通过此特性来控制不同子程序(利用了fork的返回值)

下面是fork函数的返回值说明

如果创建成功 给父进程返回子进程的PID ,给子进程返回0

        创建失败给父进程返回-1 ,没有子进程

fork函数之后会有两个分支(父与子) 执行fork之后的代码

可以通过fork给父子进程数据各自私有的特性( fork返回值的不同 ),对下面的代码进行分流

创建多进程

理解子进程的创建(总结)

  •         fork函数内部 return之前子进程已经被创建好了,return会分别被父子进程执行 ,由于父子进程的数据各自私有,因此会有两个返回值.
  •         fork之后,下面的代码由父进程和子进程分别执行
  •         但是利用fork的不同返回值, 就可以控制fork下面的代码由谁来执行(分流)
  • fork之后 ,父子进程哪个先运行 ,由OS的调度器来决定.

http://www.dtcms.com/a/41607.html

相关文章:

  • 3.19 ReAct 理论企业级实战:构建动态进化的智能 Agent 系统
  • Python爬虫(四)- Selenium 安装与使用教程
  • WordPress二次开发实现用户注册审核功能
  • 【JavaScript】《JavaScript高级程序设计 (第4版) 》笔记-Chapter25-客户端存储
  • 5.11 PEFT重参数化方法:低秩分解的微调革命
  • jupyterhub on k8s 配置用户名密码 + 自定义镜像
  • C# datatable中的数据不被转义
  • Linux——进程池
  • 信息系统项目管理师考试介绍和学习资料分享
  • JavaWeb后端基础(2)
  • PMP项目管理—整合管理篇—6.实施整体变更控制
  • 想知道两轮差速方形底盘 URDF 咋做,ROS2 配 Rviz 咋显示吗?看这里!
  • 阿里巴巴DIN模型原理与Python实现
  • 基于spring boot的失恋博物馆管理系统(源码+lw+部署文档+讲解),源码可白嫖!
  • 一周掌握Flutter开发--5、网络请求
  • 白帽黑客系列教程之Windows驱动开发(64位环境)入门教程(八)
  • 【机器学习】Logistic回归#1基于Scikit-Learn的简单Logistic回归
  • 1.✨Python练习1
  • 扩散模型基本概念
  • MyBatis TypeHandler 详解与实战:FastJson 实现字符串转 List
  • 大模型最新面试题系列:训练篇之数据处理与增强
  • vue3+ts+uniapp+unibest 微信小程序(第二篇)—— 图文详解自定义背景图页面布局、普通页面布局、分页表单页面布局
  • 服务 ‘Sql Server VSS writer‘ (SQLWriter) 在安装 LocalDB 时无法启动
  • java GUI编程实现一个计算器
  • 你对 Spring Cloud 的理解
  • 使用Python结合CoppeliaSim API来实现对UR5机械臂末端轨迹记录
  • 大模型RAG(检索增强)创新--SELF-RAG
  • Python运算符与表达式精讲:从基础到实战
  • 安科瑞基站能耗监控解决方案,全面监控、分析和优化基站能效
  • can数据记录仪在汽车路测中扮演着**关键角色*