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

酒店 深圳 网站建设wordpress 插件 免费

酒店 深圳 网站建设,wordpress 插件 免费,单位网站建设意见,济南 制作网站 公司哪家好文章目录 进程控制#xff08;一#xff09;进程终止运行正常退出码 运行异常进程正常/异常总结 进程控制#xff08;一#xff09; 在前文中#xff0c;我们初步了解了进程的概念#xff0c;以及通过fork函数来创建子进程#xff0c;并对于为什么运行一个程序#xf… 文章目录 进程控制一进程终止运行正常退出码 运行异常进程正常/异常总结 进程控制一 在前文中我们初步了解了进程的概念以及通过fork函数来创建子进程并对于为什么运行一个程序只要fork就会有两个进程分别执行不同的代码部分了解了父子进程公用同一代码以及数据。 下面我们进一步了解进程初步认识之后就要深入探讨如何对于控制进程。 进程终止 进程终止的方式有三种: 代码运行完毕结果正确代码运行完毕结果不正确代码异常终止程序 对于上述三种情况我们分别进行考虑总体上依据是否运行完毕分为两类运行正常以及运行异常终止。 运行正常 运行正常分为两种结果正确/结果不正确对于运行结果是否正确我们引入了退出码这一概念。 退出码 退出码是指在运行一个程序进程之后返回的一个int类型的数字比如main函数中我们常用的return 0表示的就是返回00即为退出码表示该程序结果运行正常结果正确其他数字表示结果不正确退出码是正整数。 正常终止进程 从main函数通过return返回调用exit调用_exit exit函数 exit函数的调用可以使得进程直接终止并返回其参数使用格式为exit(int) echo $?可以得到最近一次进程的退出码 status 定义了进程的终止状态父进程通过wait来获取该值 //exit函数 //#includeunistd.h 在unistd.h库中 //void exit(int status); 其中status表示状态码状态码有八位可以被父进程所使用如执行exit(-1) //echo $? 得到结果为255 #includeunistd.h #includeiostream using namespace std; void func() {cout Hello World! endl;exit(1);//此时结束func函数返回到main函数cout Hello World! endl; } int main() {func();return 0; }//main函数和func函数运行实际上可以认为是两个进程在运行main好比是func函数的父进程func通过exit终止程序返回码为1交给main函数_exit函数 _exit函数和exit函数的差别不大exit的执行最终也会调用_exit在此之前先执行以下几个方面 执行用户定义的清理函数冲刷缓冲区关闭流执行_exit函数 上述内容说明_exit为系统调用接口是直接对于操作系统内核进行操作不会冲刷缓冲区说明缓冲区一定不在内核中不然_exit也会冲刷缓冲区。 return return是最为常见的一种退出进程的方法执行return n相当于exit(n)main函数执行完毕后会将返回值作为exit的参数退出进程。 #includeiostream using namespace std;int main() {//执行程序之后运行到下面阶段return 0;//返回00为退出码表示结果正常 }如果是我们自己为了做题或者学习的话退出码不需要处理那就任意退出码都可以当在项目中我们需要使用到父子进程时在子进程结束后进入僵尸状态Z需要父进程来接收子进程的信息其中就有退出码用来表示程序是否正常运行。main函数的返回值本质上是指进程运行完成时是否是正确的结果如果不是可以使用不同的数字来表示不同的出错码。 **main函数return返回说明进程正常终止这也是为什么在初学c/c时main函数默认return 0 ** 运行异常 运行异常表现为进程在运行时崩溃中途终止进程显示异常信息如除零异常没有查找到文件异常 比如使用cat func命令如果当前目录下没有func目录或者文件会显示异常 上图表示为没有找到func文件或者目录这是一种异常信息 对于进程的终止如何杀死进程我们了解kill -9九号信号来进行杀死进程来控制进程所以我们可以知道实际上进程异常是运行程序后检测到异常然后操作系统通过kill命令发射相应的信号来显示报错信息以及结束进程。 通过kill -l命令可以显示所有信号 进程正常/异常总结 进程正常运行会有两种情况结果正确/不正确正确结果不用管但是为什么会出现不正确的结果又如何去知道不正确的原因呢通过退出码的形式来表示结果正确/不正确0表示结果正确其他数字表示为结果不正确不同数字对应不同的错误信息错误原因代码终止即代码异常本质上是代码并没有跑完中途崩溃那么这样就不会经过退出码直接就崩溃了如何显示异常信息呢异常就不会有退出码也就是说如果程序异常就不需要考虑退出码且异常的本质是进程收到了对应的信号在kill -l命令中我们可以看到所有的信息进程异常会将对应的信号存储下来供父进程接收。 上述提到的退出码以及异常信号都会作为信息被父进程回收处理。 退出码在系统中有对应的一套体系通过strerror(int)函数来得到对应退出码表示的信息 #includeiostream using namespace std; #includestdio.h #includeunistd.h #includestdlib.h #includestring.h int main() {//模拟实现错误信息的输出for(int i0;i200;i){printf(%d: %s\n,i,strerror(i));}return 0; }
http://www.hkea.cn/news/14287457/

相关文章:

  • 知名网站开发多少钱网站制作怎么做搜索栏
  • 学网站开发在大学申请建设门户网站的申请
  • 洛阳市涧西区建设局网站网站建设中遇到的问题
  • 做外包的网站百度标注平台怎么加入
  • 网站建设方案模版看门户是什么意思
  • wordpress默认冯耀宗seo视频教程
  • 江西抚州建设网站南宁住房和城乡建设局网站
  • 安能物流网站河南建设工程信息网 最权威平台中项网
  • 重庆推广网站排名瓯海住房与城乡建设局网站
  • 做视频网站成本高吗网站建设制作小程序开发
  • 网站策划方案如何做广告设计网站免费
  • 校园二手网站源码网站seo设置是什么意思
  • 网站开发需要学shenme网站定制牛七科技
  • 上海企业网站建设制作短剧小程序开发费用
  • 行业网站策划方案wordpress网站建设教程
  • 设计个网站需要怎么做最高法律网站是做啥的
  • 网络营销上的网站建设流程wordpress wpdx
  • 织梦wap手机网站模板lnmp wordpress ftp
  • 简单网上书店网站建设php微盟商城小程序
  • 官方网站弹幕怎么做溧阳网站建设价格
  • 单品网站怎么建设电商平台有哪些平台
  • 做dw网站图片怎么下载网站项目需求说明书
  • 网站开发难吗2008长春信息网招聘
  • 网站域名变了能查吗微信引流被加软件
  • asp门户网站系统秦皇岛乾兴建设招聘
  • 校园网站建设计划书福州做网站fjfzwl
  • 彩票网站 模块设计师如何注册个人网站
  • 打开网站弹出广告代码棋牌软件开发平台
  • 盘锦如何做百度的网站网站建设分金手指专业
  • dedecms 网站还原数据之后 乱码长沙好的网站建设公司哪家好