问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Linux中的进程问题,以及exit(0); 和sleep(5);

发布网友 发布时间:2022-04-19 12:51

我来回答

1个回答

热心网友 时间:2023-10-24 23:56

俺跟你解释一下:

fork是copy一个跟当前进程一模一样的进程,包括当前进程的所有状态(有特殊设置就不会拷贝,如文件标识)。子进程如果不设置新的执行程序,会继续执行fork之后的代码,注意前面提过的copy跟父进程一模一样的代码。

pid==0代表是子进程,因此子进程会执行这段代码:

if(pid==0)
{
    printf("child!!!\n");
    //这里会造成子进程的主线程,main执行线程,阻塞5秒
    sleep(5);
    exit(0);
}

pid > 0 代表是父进程,因此父进程继续执行的代码为:

if(pid>0)
{
    //此处必须等待子进程结束,子进程调用exit(0),时会通知父进程继续执行
    //属于进程间通讯、同步的一个手段之一。那子进程等待5秒被唤醒,执行exit(0)
    //父进程收到通知,获取到子进程的退出状态,继续就会printf,基本也就是等待了5秒
    //然后父进程return 0 等价于exit(0)正常结束
    wait(NULL);//不这样写,父进程直接结束可能会产生僵尸进程,也可能变成孤儿进程由
    //由init进程领养,并正确结束。通用的做法必须wait。根据操作系统以及版本不同处理
    //方式可能不一样,如aix可能就会有僵尸进程产生
    printf("father!!!\n");
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
少数民族过年习俗 第一ppt模板网官网 努比亚布拉格s可以充公交卡的nfc功能吗 康佳电视机死机了,要怎么处理呢? SuperPiCPU性能检测工具V12绿色汉化版SuperPiCPU性能检测工具V12绿色汉 ... 事故车鉴定的方法是什么? 请问大佬有飞儿云CPU限速工具 V1.0 官方版软件百度云资源吗_百度... 怎么才能鉴定是事故车 我现在上网打开网页特别慢,有人说让我看看任务管理器CPU的占有率... ...CPU监视工具) V8.70.6 英文版软件免费百度云资源吗 Linux系统如何切换前台进程和后台进程 linux进程的几种状态 linux 服务进程 Linux中如何让进程(或正在运行的程序)到后 如何在 Linux 系统中结束结束进程或是中止程序 Linux进程后台运行的几种方式 Linux启动新进程的几种方法及比较 linux中如何把一个进程放在后台运行 linux 系统重启 进程还在 远程连接Linux,如何使程序断开连接后继续运 linux 重启进程 linux操作系统中常见的进程管理命令有哪些 如何在用户退出linux系统时使一个进程仍然继续执行? Linux下怎么删除程序_linux中如何删除文件 qq同步助手怎么更改绑定手机号 QQ同步助手怎么用换机 换手机了 用了QQ同步助手 为什么手机备份了两个手机的通讯录老是互换 苹果手机换机,用QQ同步助手转移数据能行吗,谁知道? 怎样用QQ同步把一个手机信息全部移到另一个手机 QQ同步助手可以把旧手机数据导入到新的手机里面吗? linux进程管理怎么关闭后台进程 怎样把WPS Word文档中的表格转化为文本啊,如图 wps怎么把表格转换成文本 如何将WPS表格文件转换为文字文件? wps怎样把excel表格转换成wps文字格式 wps表格怎么把总和改成文字 wps表格怎么转换成wps文字 WPS表格怎样设置文字格式 2016版wps怎么把表格转换成文字 怎样将wps表格的的文字转换为wps文字 怎么把WPS表格文件转换为WPS文字文件 怎样把wps表格转换成wps文字 wps怎么把表格转成word WPS软件用表格做的文档资料如何转成文字文档? 请问在金山办公软件中怎样把WPS表格转换成WPS文字? 如何将wps表格转换成wps文字 怎么把WPS文字转换成文本文档 关于vue播放器的插件有哪些? 宝马共有几种车型 宝马一共有多少系车型?每个系列的车型都有什么型号?