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

敦煌手机网站设计网站销售公司

敦煌手机网站设计,网站销售公司,爱站工具包的模块,安徽网站建设网络公司函数原型 pid_t vfork(void);//pid_t是无符号整型 所需头文件 #include <sys/types.h> #include <unistd.h> 功能 vfork() 函数和 fork() 函数一样都是在已有的进程中创建一个新的进程&#xff0c;但它们创建的子进程是有区别的。 返回值 成功子进程中返回 …

函数原型

pid_t vfork(void);//pid_t是无符号整型

所需头文件

#include <sys/types.h>
#include <unistd.h>

功能

vfork() 函数和 fork() 函数一样都是在已有的进程中创建一个新的进程,但它们创建的子进程是有区别的。

返回值

成功子进程中返回 0,父进程中返回子进程 ID
失败返回 -1

vfork与fork的区别

关键区别一:

fork执行时无先后顺序,父进程与子进程会争夺执行 

vfork保证子进程先运行,当子进程调用exit退出后,父进程才执行

代码验证

#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>int main()
{int fork_t = 0;fork_t = fork();if(fork_t > 0){while(1)		{printf("This is father\n");sleep(1);}}else if(fork_t == 0){while(1){printf("This is child\n");sleep(1);}}return 0;
}

#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
#include <stdlib.h>int main()
{int vfork_t = 0;int count = 0;vfork_t = vfork();if(vfork_t > 0){while(1)		{printf("This is father\n");sleep(1);}}else if(vfork_t == 0){while(1){printf("This is child\n");sleep(1);count++;if(count >= 3){exit(-1);//输出三次子进程,之后退出}}}return 0;
}

第一部分代码可见fork函数中的父进程和子进程会争夺输出,而第二部分的vfork函数会在子进程输出3次退出之后再执行父进程。


关键区别二:

fork中子进程会拷贝父进程的所有数据,子进程是父进程的地址空间

vfork中子进程共享父进程的地址空间

代码验证

#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>int main()
{int fork_t = 0;int a = 10;fork_t = fork();if(fork_t != 0){printf("This is father,a = %d\n",a);}else{printf("This is child,a = %d\n",a);}return 0;
}

#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
#include <stdlib.h>int main()
{int vfork_t = 0;int count = 0;vfork_t = vfork();if(vfork_t > 0){while(1)		{	printf("count = %d\n",count);printf("This is father\n");sleep(1);}}else if(vfork_t == 0){while(1){printf("This is child\n");sleep(1);count++;if(count >= 3){exit(0);}}}return 0;
}

第一部分代码可知,在父进程中定义a,调用fork函数时,父进程与子进程打印a的值一样,说明子进程会拷贝父进程的所有数据(父进程的只打印自己的值,不会收子进程影响);第二部分代码可知,在子进程结束之后,才会执行父进程,且子进程中数值发生改变,在父进程调用时会发生改变(一开始父进程a=0,调用后a=3),会受到子进程影响

http://www.yayakq.cn/news/666159/

相关文章:

  • 商城网站素材网站开发ceil(5.5)
  • 网站群建设规划方案快速网站轻松排名
  • 做网站需要考虑seo吗合肥飞墨设计
  • aspcms三合一网站源码打开网址资料网站
  • 网站seo软件服务周到的上海网站建设公司
  • 一个网站服务器一年大概多少钱网站系统容量评估
  • 中山建网站推荐专业做网站建设建站
  • 北京南站到北京西站国外做测评的网站有哪些
  • 网站点击量有什么用1688做网站多少钱
  • 专门做家教的网站东乡网站建设
  • 建卡盟网站建设 网站定制开发佛山百度快照优化排名
  • 网站和网络建设调研情况wordpress网页版
  • 旅游网站建设主要工作html5 网站源代码
  • 电商网站建设工具网站开发毕设开题报告怎么写
  • 怎样制作图片网站Wordpress 分表分库
  • 江门网站建设兼职wordpress 装饰模板下载
  • 化妆品电子商务网站建设策划书微信小程序开发需要什么技能
  • h5网站动画怎么做招聘网站怎么做效果好
  • 挪威网站后缀免费ppt模板下载红色主题
  • 网站推广软文范文浙江建设网官网
  • 网站开发 百度编辑器网站建设忄金手指专业
  • 装修设计公司网站有哪些台州建站程序
  • 好的平面网站模板各大网站搜索引擎入口
  • 简洁网站模板下载千博网站建设
  • 网站建设与网页设计大作业响应式网站区别
  • 手机移动端网站建设餐饮行业网站建设
  • 免费ppt模板免费网站网页设计实训报告设计思路
  • 关于建设设计院公司网站的建议番禺附近网站建设推广
  • 苏州网站建设上往建站互联网是什么
  • 诚一网站推广怎么查看WordPress主题HTML