进程/线程基本编程

本文详细介绍了C++中如何进行进程管理,包括创建cpp文件并编译运行,使用fork新建进程,通过exec替换进程内容,exit结束进程以及wait等待子进程结束。讲解了每个函数的工作原理及其在多进程交互中的作用,帮助读者深入理解进程生命周期的关键操作。
摘要由CSDN通过智能技术生成

1、产生cpp文件

vi 文件名.cpp
#在文件内写c++代码

#编译链接
g++ 文件名.cpp -o 生成的文件名
#g++ 01.cpp -o test

#运行文件
./文件名
#./test

2、新建进程

pid_t pid=fork(); //克隆父进程,新建一个进程。
//克隆后进程的id号不同。
//父进程pid=孩子的id号
//子进程返回0,pid=0;
//进程错误,返回-1

对于这2个进程,谁先获得cpu,谁先执行。

3、exec

在这里插入图片描述
可以用于,给子进程加入新代码。

4、exit 进程的消亡

并不是马上消失,而是变为僵死状态。

命令行后面加入&,是让这个进程变成后台运行。
exit(1);  #进程死亡

5、wait

  1. 使进程进入堵塞状态。 子进程死亡会唤醒堵塞的父进程
  2. 有多个子进程,父进程就需要写多个wait,不然其中一个孩子死亡,父进程可能就直接结束了,其余孩子的父进程就会改变。变成父进程的父进程。
wait(Null);

6、

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值