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

网站备案流程教程宽屏wordpress主题

网站备案流程教程,宽屏wordpress主题,百度上怎么免费开店,seo网站提交提交一、进程的创建 1、知识储备 进程的创建要调用系统接口#xff0c;头文件 #includeunistd.h 函数fork() 由于之前的铺垫我们现在可以更新一个概念 进程 内核数据结构#xff08;task_struct, mm_struct, 页表....#xff09; 代码 数据 所以如何理解进程的独…一、进程的创建 1、知识储备 进程的创建要调用系统接口头文件 #includeunistd.h 函数fork() 由于之前的铺垫我们现在可以更新一个概念 进程 内核数据结构task_struct, mm_struct, 页表.... 代码 数据 所以如何理解进程的独立性呢 就是上述组成进程的结构都是独立的互不影响的。 那为什么 fork() 返回的是子进程的pid呢 是为了让父进程对子进程进行表示和管理。 2、理解fork() 1fork() 常见用法 a、在一个代码中通过 fork() 不同的返回值用 if else分流以达到不同进程执行不同代码的目的。 b、可以让父子进程独立进行完全不同的代码。 2fork() 失败的原因 a、操作系统中进程太多。 b、实际用户创建的进程太多超出规定个数。 二、进程的终止 首先我们要知道进程是先创建内核数据结构再加载代码和数据。 1、终止的表现 会释放代码和数据所占据的空间释放内核数据结构task_struct 会延期释放 2、终止的三种情况 1观察现象 首先我们先观察一个现象 当我们以前在写c语言代码时我们都是 return 0; 结尾当我们今天 return 100; 时用 echo $? 命令获取进程的退出码时就会发现退出码和 return 后面的数字是一样的。 2解释 echo $? echo内建命令打印bash内部变量数据。 $访问变量内容。 父进程bash获取最近一个子进程的退出码。 3退出码 退出码0是成功非0是失败。 每一个非0数都有不同的失败原因。 头文件 #includestring.h    函数 char* strerror(int num) 可以查看退出码。 上图只截了一部分退出码。 退出码的作用就是告诉父进程子进程把任务完成的怎么样。 结论当代码跑完时结果的正确与否是由退出码反馈给用户的。 4退出信号 与退出码不同退出信号是代码还没跑完系统就崩溃了操作系统发现进程做了不该做的事比如访问野指针等等操作系统就会杀死进程。 所以一旦出现异常退出码也就没有意义了但是返回的退出信号是有意义的。 例如Segmentation fault 就是段错误代码段是有错误的。 退出信号的本质操作系统给进程发信号并终止进程。 之前我们说kill -9 可以直接杀死进程也就是这个原因而我们上面提到的段错误 Segmentation fault 就是操作系统发送了 kill -11 信号。 5总结 衡量一个进程的退出只要看退出码和退出信号。 先确认是否异常若不是才看退出码。 所以在子进程的 task_struct 中就会有 exit_code(退出码)  exit_signal(退出信号)在执行完代码后写入退出码和退出信号供父进程读取。 3、如何终止 1main()函数中的 return 代表进程终止普通函数 return 表示函数结束 2调用头文件#includestdlib.h 函数 void exit(int status) status相当于退出码exit等价于return 3调用头文件#includeunistd.h 函数 void _exit(int status)基本与exit函数相同一个是c库函数一个是系统调用。 区别 exit 执行时会冲刷缓冲区但是 _exit不会所以其实这里所说的缓冲区只是c库层面的不是系统调用层面的缓冲区。 exit本质就是底层调用 _exit 三、进程等待 任何子进程在退出的情况下必须要被父进程等待。如果父进程不管子进程就会处于僵尸状态导致内存泄漏。 三、进程的等待 1、为什么父进程要等待子进程 1解决僵尸问题回收系统资源。必须 2获取子进程退出信息知道子进程为什么退出。可选 2、怎么等待 1wait 函数 头文件 #includesys/types.h #includesys/wait.h 函数 pid_t wait(int* status) 等待成功返回子进程的pidwait(NULL)表示父进程等待任意一个子进程退出。 若子进程一直不退出父进程就进入阻塞等待。 阻塞等待的本质把父进程设为非运行状态S链入到子进程队列中子进程退出父进程唤醒。 2waitpid 函数 头文件 #includesys/types.h #includesys/wait.h 函数 pid_t waitpid(pid_t id, int* status, int options) waitpid(-1, NULL, 0)等价于wait(NULL) a、理解参数 id id 表示要等待哪个子进程 所以理解代码 pid_t id fork(); waitpid(id, NULL, 0); 在父进程中fork()返回子进程pid所以就指定了要返回哪个子进程了。 b、理解参数 status status是输出型参数例如 scanf()就是把数值写入到一个变量中输出的是退出信息包括退出码和退出信号 理解额代码 我们知道int有32位bit位status只考虑低16位 获取退出码(status8) 0xFF 获取退出信息status 0x7F c、获取退出码的宏 WIFEXITED(status)     代码正常走完就返回真 WEXITSTATUS(status)    若WIFEXITED为真就提取退出码 3非阻塞等待 上述父进程都是等子进程跑完之后才工作的这种都是阻塞等待调用waitpid默认也是阻塞等待但是我们想让父进程在等待时做其他事情就要让 waitpid 中 option 设成 WNOHANG 此时返回值 0等待失败。 返回值 0检测成功但是子进程未退出等待下一次检测。 返回值 0等待成功并且父进程回收成功。 非阻塞等待 循环 非阻塞轮询 达到父进程能做其他事情。
http://www.hkea.cn/news/14317125/

相关文章:

  • 南通科技网站建设龙岩e网站
  • 网站301了不知道在哪做的海口网站设计
  • 锡林浩特建设局网站wordpress mxtheme02
  • 好模版网站小程序制作单位
  • 北京网站关键词排名通付盾 网站建设公司
  • 天津 网站设计公司ps做 网站标准尺寸
  • 网站后台管理界面代码懂得都懂晚上正能量
  • 谷歌关键词搜索排名谷歌seo 外贸建站
  • 仿卢松松博客网站源码省建设厅官网查询
  • 如何做企业网站及费用问题有视频接口怎么做网站
  • 门户网站 jspwordpress食谱主题
  • 做网站的困难一级a做爰片2202网站
  • 在线制作网站律师个人网站模板
  • 营销型网站成功案例公司怎么样做网站
  • 一块钱涨1000粉网站wordpress列表加载更多
  • 福州有网站开发的公司吗wordpress增加边栏
  • 潍坊网站开发公司宁波seo优化报价多少
  • 公司设计网站定制广告公司做网站的效果怎么样
  • 建设商城网站湖南建立网站营销设计
  • 网站开发汇报的ppt专业的画册设计网站
  • 制作网站后台注册公司上什么网站
  • 如何做多语言网站全网营销推广
  • 衡水网站建wordpress购买按钮插件
  • 南宁定制网站建设网站经典设计
  • 网站按钮确定后图片怎么做如何给网站绑定域名
  • 郯城网站建设建设网站银行
  • 网页设计实训报告参考文献怎么优化网站内容
  • 我的世界做壁纸的网站网站要怎么样做排名才上得去
  • 做网站怎样收费的做两个一摸一样的网站
  • 云南火电建设有限公司网站做网站分析