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

成都成华区网站建设网络营销的特点不包括

成都成华区网站建设,网络营销的特点不包括,市场调研报告怎么写的,外贸网站营销推广1.为什么要有缓冲区 缓冲区分成语言层面的缓冲区和操作系统层面的缓冲区 先说结论#xff0c;语言的缓冲区可以减少系统调用的次数进而提高向文件写入和读取的效率。 2.举例子 向屏幕打印#xff0c;无非就是向屏幕这个文件的缓冲区写入#xff0c;然后在由操作系统刷新…1.为什么要有缓冲区 缓冲区分成语言层面的缓冲区和操作系统层面的缓冲区 先说结论语言的缓冲区可以减少系统调用的次数进而提高向文件写入和读取的效率。 2.举例子 向屏幕打印无非就是向屏幕这个文件的缓冲区写入然后在由操作系统刷新到显示器文件这样显示器就可以显示内容了。 #includeunistd.h2 #includesys/stat.h3 #includesys/types.h4 #includefcntl.h5 6 int main()7 {8 char s[] hello buffer\n;9 write(1,s,sizeof(s)); //显示器文件默认打开fd 110 return 0;11 } 直接调用系统调用写到显示器文件的缓冲区然后由操作系统刷新。 3.c语言缓冲区 将文件的缓冲区写入这件事一定是由系统调用接口做的而系统调用是有消耗的所以在调用printf时会将数据写入c语言本身的缓冲区然后根据刷新策略由系统调用将c语言缓冲的内容刷新到文件的缓冲区再由操作系统将文件缓冲区刷新到文件中。 这就好比我想申请100字节的空间一次malloc(100)肯定会比10次mallc(10)更高效。 c语言各种文件接口一定是对系统调用的封装因为不仅仅要引入缓冲区还要保证不同平台之间的移植性。 那么c语言的缓冲区在哪里呢 我们对比一下系统调用和c语言的接口就能推断出 write接口是通过fd去文件描述表中寻找对应的文件的缓冲区写入。 fwrite却是向FILE *stream这个流中写入说明FILE*stream这个结构体一定封装了fd和一个缓冲区因为fwrite是write的封装。 #includeunistd.h2 #includesys/stat.h3 #includesys/types.h4 #includefcntl.h5 #includestdio.h6 #includestring.h7 8 int main()9 {10 //使用系统调用接口11 const char *s1 hello write;12 write(1,s1,strlen(s1));13 //使用c语言接口14 const char *s2 hello fwirte;15 fwrite(s2,strlen(s2),1,stdout);16 const char *s3 hello printf; 17 printf(%s,s3);18 19 fork();20 return 0;21 }运行结果 我们发现系统的接口打印了一次而c语言接口打印了两次。 因为向显示器打印刷新策略默认是行刷新只有在遇到\n时才会将c语言缓冲区内容刷新到显示器文件的缓冲区。 但是因为字符串都没有换行所以hello fwrite和hello printf都是在c语言的缓冲区之内fork创建子进程接着进程要退出了要把c语言缓冲区的内容全部刷新到文件的缓冲区因为创建进程后使用数据会发生写时拷贝这样父进程缓冲区有一份hello fwrite和hello printf子进程有一份hello fwrite和hello printf所以c语言接口会被打印两次。 系统接口直接刷新到文件缓冲区自然没有以上问题。 我们只要在每个字符串后面加上个\n就会每个都输出一次因为行刷新遇见\n就会刷新到文件缓冲区最后fork(的时候c语言的缓冲区是空的不会发生写时拷贝自然不会打印两次。
http://www.pierceye.com/news/31811/

相关文章:

  • 北京网站建设策划淄博网站建设电话咨询
  • 知名企业网站例子深圳网站建设索q.479185700
  • 餐饮公司网站制作苏州seo网站推广
  • 龙岗网站制作水禾田网站建设公司
  • 邹带芽在成武建设局网站营销网站建设实训总结
  • 网站开发方向全球做的比较好的网站有哪些
  • 如何免费建立个人网站重庆建设岗位培训系统
  • 做网站资源管理是让公司做网站要注意什么
  • 宝安区住房和建设局网站湖南营销型网站建设磐石网络省钱
  • 欧米茄表官方官网seo优化软件免费
  • 深圳建立公司网站公司郑州做网站推广的公司
  • 网站建设需要什么流程图sea wordpress
  • 重庆铜梁网站建设公司茶叶网站建设网页设计制作
  • 网站pc端网址和手机端网址建设建设银行网站打不井
  • 福州网站建设询q479185700上快暴雪国际服
  • 百度站长电脑版怎么在微信上卖东西
  • 网站有域名没备案东莞网站排名价格
  • 51建模网官方网站互联网推广平台有哪些
  • 3d网站制作教育网站解决方案
  • 南通教育平台网站建设做网站哪家公司好苏州
  • 模板网站会影响网站优化吗抖音代运营合同文件
  • 国外设计教程网站商标免费查询入口
  • 山东网站制作定制wordpress php 5.2.17
  • 个人做游戏网站金山办公给我发验证码
  • 揭阳企业网站建设开发景区网站建设教程
  • 陕西网站建设哪家专业wordpress新建分类目录
  • 河南县wap网站建设公司西安市招标投标信息网
  • 网站建设与管理自考题WordPress网站404公益页面
  • 建筑八大员报名网站建筑设计师网站
  • 网站域名需要续费的吗网站域名绑定破解