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

网站排版设计欣赏上海百度推广电话客服

网站排版设计欣赏,上海百度推广电话客服,用vs2010做网站导航,正规网站建设价格费用无名管道 通过一个管道(假象)进行传输数据,但是这个管道的传输方式是单工(半双工)的,就是这个管道允许进行发送和接受数据,不过不能同时进行。 创建无名管道 这里用到一个pipe(&…

无名管道

        通过一个管道(假象)进行传输数据,但是这个管道的传输方式是单工(半双工)的,就是这个管道允许进行发送和接受数据,不过不能同时进行。

创建无名管道

        这里用到一个pipe()函数,参数fd[2]为一个数组,用来保存函数返回的两个文件描述符,将fd[0]视为管道的读端,而fd[1]视为管道的写端。这也意味着,需要通过这两个设定的文件描述符进行读写。

无名管道操作特性

        (1)无名管道只能用于具有亲属关系的进程之间通信(如父子进程)

                        所以要用无名管道,首先需要生成有个父子进程

        (2)对管道的读写可以使用I/O中read()函数、write()函数直接操作文件描述符即可

                         如:write(fd[1],buf,nbyte);

                                read(fd[0],buf,N);

        (3)无名管道本质是内和空间的内存段,不能使用lseek()函数定位。

        (4)一次性操作,一旦管道中存在的数据被读取,管道将会清除被读取的数据。

        (5)大小固定,写满会阻塞。

fork函数

fork创建父子进程 ,父进程得到一个返回值,这个返回值为子进程的ID(一定大于零的整数),子进程同样得到一个返回值但为零。

父进程读取源文件写入管道

以及子进程读取管道,写入目标文件

  if(pid>0){                  //父进程while((nbyte = read(fdr,buf,N))>0)    //父进程读取文件写入管道write(fd[1],buf,nbyte);printf("读取成功\n");}if(pid==0)             //子进程{while((nbyte = read(fd[0],buf,N))>0)  //子进程从管道中读取,写入文件write(fdw,buf,nbyte);}

源码: 

#include<stdio.h>
#include<stdlib.h>
#include<unistd.h>
#include<sys/types.h>
#include<sys/fcntl.h>
#include<error.h>#define N 128
#define errlog(errmsg) do{perror(errmsg);\printf("--%s--%s--%d--\n",\__FILE__,__FUNCTION__,__LINE__);\return -1;}while(0)int main(int argc,char *argv[])
{pid_t pid;int fdr,fdw;ssize_t nbyte;int fd[2];char buf[N] = " ";if((fdr = open(argv[1],O_RDONLY))<0){errlog("open error");}if((fdw = open(argv[2],O_CREAT|O_WRONLY|O_TRUNC,0664))<0){errlog("open error");}if(pipe(fd)<0)       //创建管道{errlog("pipe error");}pid = fork();       //创建父子进程if(pid<0){errlog("fork error");}else if(pid>0){                  //父进程while((nbyte = read(fdr,buf,N))>0)    //父进程读取文件写入管道write(fd[1],buf,nbyte);printf("读取成功\n");}else if(pid==0)             //子进程{while((nbyte = read(fd[0],buf,N))>0)  //子进程从管道中读取,写入文件write(fdw,buf,nbyte);}return 0;
}

运行:

对.c文件编译

./编译生成.o文件 源文件 目标文件

cat 目标文件(查看复制后的结果)

执行成功

http://www.khdw.cn/news/68146.html

相关文章:

  • 没备案可以做网站么今日头条武汉最新消息
  • 医疗网站建设目录seo的主要工作是什么
  • 软件工程四大方向网站seo是干什么的
  • 免费的网站入口在哪苏州网站建设方案
  • com域名代表什么百度优化教程
  • 网站建设渠道合作网络营销方式包括哪些
  • 关于网站建设的简历seo接单平台有哪些
  • 老干部局网站建设舆情分析网站
  • 揭阳网站制作托管cba排名
  • 珠海网站建设网络公司怎么样梅州网络推广
  • 景点网站怎么做网站收录软件
  • 南昌市 做网站的公司济宁seo推广
  • 惠东县住房和城乡规划建设局网站网页制作在线生成
  • 平面作品集展示图片seo内部优化方式包括
  • 深圳做网站 肖先生营销团队找产品合作
  • 个体工商户 经营性网站外贸谷歌推广
  • 网站设计规划高中信息技术seo快速入门教程
  • 网站好友邀请链接生成 php新的营销模式有哪些
  • b2b货源网seo和点击付费的区别
  • 网站开发大公司需要资格证吗平台推广费用一般是多少
  • 2021中国十大软件公司排名沈阳seo收费
  • 上海装饰公司网站建设宁波网络推广
  • 网站代理加盟赚钱吗保健品的营销及推广方案
  • 做电商网站赚钱吗外贸建站
  • 沈阳网站seo下载百度地图2022最新版
  • 温州快速建站公司站长之家域名查询排行
  • 网站建设模板源代码百度一下首页
  • 快速免费做网站有哪些免费网站可以发布广告
  • 免费建站赚钱泰州百度关键词优化
  • 合肥建设网站百度一下百度下载