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

微生成网站粉色系 wordpress

微生成网站,粉色系 wordpress,在北京哪家公司建网站合适,代发关键词包收录作业1#xff1a; 多线程实现文件拷贝#xff0c;线程1拷贝一半#xff0c;线程2拷贝另一半#xff0c;主线程回收子线程资源。 代码#xff1a; #include myhead.h sem_t sem1; void *copy1()//子线程1函数 拷贝前一半内容 {int fd1open(./1.txt,O…作业1 多线程实现文件拷贝线程1拷贝一半线程2拷贝另一半主线程回收子线程资源。 代码 #include myhead.h sem_t sem1; void *copy1()//子线程1函数 拷贝前一半内容 {int fd1open(./1.txt,O_RDONLY);int fd2open(./2.txt,O_CREAT|O_RDWR|O_APPEND,0664);if(fd1-1){perror(open);}if(fd2-1){perror(open);}char s[100];int sum10,res10;int lenlseek(fd1,0,SEEK_END);//统计文件字节数lseek(fd1,0,SEEK_SET);//统计完光标要返回while(1){res1read(fd1,s,sizeof(s));sum1res1;//每读一次把读取长度加起来if(res10||sum1len/2){int kres1-(sum1-len/2);//该次读取字节数-超过len/2的字节数write(fd2,s,k);break;}write(fd2,s,sizeof(s));//把读取到的字节写入2.txt}printf(线程1拷贝完成\n);close(fd1);close(fd2);sem_post(sem1);pthread_exit(NULL); } void *copy2()//子线程2函数 拷贝后一半内容 {sem_wait(sem1);int fd1open(./1.txt,O_RDONLY);int fd2open(./2.txt,O_CREAT|O_RDWR|O_APPEND,0664);if(fd1-1){perror(open);}if(fd2-1){perror(open);}int fd3;int res20;int lenlseek(fd1,0,SEEK_END);//统计文件字节数lseek(fd1,0,SEEK_SET);//统计完光标要返回dup2(fd1,fd3);//fd3重定向fd1lseek(fd3,len/2,SEEK_SET);//fd3光标移动中间char s[100];while(1){res2read(fd3,s,sizeof(s));if(res20){break;}write(fd2,s,res2);}printf(线程2拷贝完成\n);close(fd1);close(fd2);close(fd3);pthread_exit(NULL); } int main(int argc, const char *argv[]) {pthread_t tid1,tid2;sem_init(sem1,0,0);if(pthread_create(tid1,NULL,copy1,NULL)){perror(pthread_create);return -1;}if(pthread_create(tid2,NULL,copy2,NULL)){perror(pthread_create);return -1;}pthread_join(tid1,NULL);pthread_join(tid2,NULL);printf(回收完成\n);sem_destroy(sem1);return 0; }运行测试结果 作业2线程同步之条件变量 生产者先让消费者组成一个队列生产者生产了一台劳斯莱斯唤醒第一个消费者来消费然后再生产第二台劳斯莱斯唤醒第二个消费者来消费这样可以精确化的控制生产者线程和消费者线程的协同 代码 #include myhead.h #define MAX 10 pthread_cond_t cond; pthread_mutex_t mtx; sem_t sem; int n0,count0; void *producer() {for(int i0;iMAX;i){sem_wait(sem);//用条件变量卡一下n;printf(生产了一台特斯拉%d\n,n);pthread_cond_signal(cond);//唤醒一个等待线程}pthread_exit(NULL); } void *consumer() {pthread_mutex_lock(mtx);//进入后锁住pthread_cond_wait(cond,mtx);//条件变量每接受一次进入后重新上锁count;printf(消费了一台特斯拉%d\n,count);usleep(200000);pthread_mutex_unlock(mtx);sem_post(sem);//条件变量放行pthread_exit(NULL); } int main(int argc, const char *argv[]) {pthread_t tid1,tid2[MAX];pthread_cond_init(cond,NULL);//条件变量pthread_mutex_init(mtx,NULL);//互斥锁sem_init(sem,0,1);//条件变量if(pthread_create(tid1,NULL,producer,NULL)!0){perror(pthread_create);return -1;}for(int i0;iMAX;i){if(pthread_create(tid2[i],NULL,consumer,NULL)!0){perror(pthread_create);return -1; }}pthread_join(tid1,NULL);for(int i0;iMAX;i){pthread_join(tid2[i],NULL);}pthread_mutex_destroy(mtx);pthread_cond_destroy(cond);return 0; }运行测试结果 作业3 互斥锁无名信号量条件变量再练习一遍 1.互斥锁代码如何实现 代码 #include myhead.h pthread_mutex_t mtx;//定义互斥锁 void *fun(void *n) {pthread_mutex_lock(mtx);//上锁printf(%d\n,*(int *)n);pthread_mutex_unlock(mtx);//解锁pthread_exit(NULL); } int main(int argc, const char *argv[]) {pthread_t tid1,tid2;int num11,num22;pthread_mutex_init(mtx,NULL);//初始化互斥锁if(pthread_create(tid1,NULL,fun,num1))//子线程1{perror(pthread_create);return -1;}if(pthread_create(tid2,NULL,fun,num2))//子线程2{perror(pthread_create);return -1;}pthread_join(tid1,NULL);//阻塞回收线程pthread_join(tid2,NULL);pthread_mutex_destroy(mtx);//毁锁return 0; }运行测试结果 2.无名信号量 代码 #include myhead.h #define MAX 5 sem_t sem;//定义无名信号量 int n0; void *producer() {for(int i0;iMAX;i){n;printf(生产了特斯拉%d\n,n);}sem_post(sem);//释放无名变量pthread_exit(NULL); } void *consumer() {sem_wait(sem);//申请无名变量printf(消费了一台特斯拉%d\n,n);n--;sem_post(sem);pthread_exit(NULL); } int main(int argc, const char *argv[]) {pthread_t tid1,tid[MAX];sem_init(sem,0,0);//初始化无名信号量if(pthread_create(tid1,NULL,producer,n)!0){perror(pthread_create);return -1;}for(int i0;iMAX;i){if(pthread_create(tid[i],NULL,consumer,n)!0){perror(pthread_create);return -1;}}pthread_join(tid1,NULL);for(int i0;iMAX;i){pthread_join(tid[i],NULL);}sem_destroy(sem);//销毁无名变量return 0; }运行测试结果 3.条件变量 见作业2 Xmind知识点
http://www.w-s-a.com/news/310582/

相关文章:

  • wap网站搜索wordpress工作室模板
  • 青岛金融网站建设如何提交网站地图
  • 制作简单门户网站步骤网站建设论文的摘要
  • 可以直接进入网站的正能量照片学做静态网站
  • 织梦做社交网站合适吗网站的市场如何制作
  • 阳曲网站建设价格多少四川佳和建设工程网站
  • 免费注册店铺位置sem seo什么意思
  • 建筑网站搜图电子商务网站建设渠道
  • 学校网站内容四川手机网站开发
  • 网站制作公司违法商业网站运营成本
  • 显示佣金的网站是怎么做的广告设计主要做哪些
  • 做阿里网站的分录济南seo网站排名关键词优化
  • 北京建设银行纪念钞预定官方网站wordpress中文优化版
  • 宝安做棋牌网站建设找哪家效益快创意设计师个人网站
  • 做线上网站需要多少钱系统开发板价格
  • 建筑企业登录哪个网站wordpress feed地址
  • 网站建设流程百科提升seo搜索排名
  • 杭州网站建设 巴零做销售怎么和客户聊天
  • 北京自己怎样做网站wordpress oauth2插件
  • 上海800做网站wordpress建站的好处
  • 婚纱摄影网站设计模板如何做好网站内容
  • cdn网站加速招商计划书模板ppt
  • 我在某网站网站做代理开发小程序外包
  • 设计网站国外商城网站的建设费用
  • 网站开发工作需要什么专业学做网站游戏教程
  • 电子商务网站规划 分析 设计杭州网站优化平台
  • 汕头企业自助建站系统网站后台登陆验证码无法显示
  • 宁波网站制作服务做外贸推广自己网站
  • php 微信 网站开发青岛网站互联网公司
  • 网站软件免费下载大全网站建设开发价格高吗