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

做网站主要注意些什么问题中信建设有限责任公司深圳中信金融中心项目工期专业招标

做网站主要注意些什么问题,中信建设有限责任公司深圳中信金融中心项目工期专业招标,盘锦网站建设制作,企业cms源码目录 第7关#xff1a;生产者消费者问题实践 第1关#xff1a;生产者消费者问题实践 1、在主线程中初始化锁为解锁状态 2、访问对象时的加锁操作与解锁操作 3、#xff08;生产和消费进程操作后#xff09;信号量操作实现进程同步 4、先等待#xff08;生产还是消费…目录 第7关生产者消费者问题实践 第1关生产者消费者问题实践 1、在主线程中初始化锁为解锁状态 2、访问对象时的加锁操作与解锁操作 3、生产和消费进程操作后信号量操作实现进程同步 4、先等待生产还是消费需要的条件 5、生产者函数 6、消费者函数 第2关进程互斥和同步 1、注意这以下4个的关系 2、一般情况哪两个函数的参数一起配套使用 3、在第一次用完这些函数之后记得写上互斥锁然后再调用这一类函数时之前要释放互斥锁。 4、儿子的消费进程 5、父亲的生产进程 6、女儿的消费进程 第7关生产者消费者问题实践 第1关生产者消费者问题实践 1、在主线程中初始化锁为解锁状态 pthread_mutex_t mutex;pthread_mutex_init(mutex, NULL); 2、访问对象时的加锁操作与解锁操作 加锁 pthread_mutex_lock(mutex);释放锁 pthread_mutex_unlock(mutex); 3、生产和消费进程操作后信号量操作实现进程同步 信号量加1操作int sem_post(sem_t *sem); 销毁信号量int sem_destroy(sem_t *sem); 4、先等待生产还是消费需要的条件 sem_wait(empty);sem_wait(full); 5、生产者函数 void *Producer() {int nextp 0;int i 0;for(; i 10; i){ int time rand() % 10 1;usleep(time*100000); sem_wait(empty); //等待缓冲区有空位置为空pthread_mutex_lock(mutex);nextp nextp 1;buffer[in] nextp;printf(Produce one message:%d\n, nextp);fflush(stdout);//printf后请一定调用这句刷新输出缓存in (in 1) % SIZE;pthread_mutex_unlock(mutex); //互斥锁解锁sem_post(full);} } 6、消费者函数 void *Consumer() {//请补充消费者线程函数代码int nextc 0;int i0;for(;i10;i){sem_wait(full); //等待缓冲区有东西不为空pthread_mutex_lock(mutex); //加锁nextc buffer[out];printf(Consume one message:%d\n, nextc);fflush(stdout);//printf后请一定调用这句刷新输出缓存out (out 1) % SIZE;pthread_mutex_unlock(mutex); //互斥锁解锁sem_post(empty); } 第2关进程互斥和同步 这个就比较简单的仿照着写读懂上一题就会写了 1、注意这以下4个的关系  sem_wait(empty); 意思是只要有空位置开始生产sem_post(empty);消费完就要提示空的位置1sem_wait(full);  意思是只要有生产的东西开始消费sem_post(full);生产完就要提示已经生产的东西1 2、一般情况哪两个函数的参数一起配套使用 在生产进程中先判断是否有空位置(sem_wait(empty);)最后在生产结束之后告诉生产的东西1(sem_post(full);)在消费的进程中先判断是否有已经生产好的东西(sem_wait(full);)最后在消费完之后提示空的位置1(sem_post(empty);) 3、在第一次用完这些函数之后记得写上互斥锁然后再调用这一类函数时之前要释放互斥锁。 4、儿子的消费进程 注意这里的消费的东西是orange void *Son() {//请添加儿子线程的函数代码while(1){int time rand() % 10 1; //随机使程序睡眠0点几秒usleep(time * 100000); sem_wait(orange); pthread_mutex_lock(mutex);printf(儿子取了一个桔子\n) ;fflush(stdout);pthread_mutex_unlock(mutex); //互斥锁解锁sem_post(empty);} } 5、父亲的生产进程 生产的是苹果apple 和 orange void *Dad() {int nextp 0;int i 0;for(i 0; i 10; i){int time rand() % 10 1; //随机使程序睡眠0点几秒usleep(time*100000); sem_wait(empty); pthread_mutex_lock(mutex);if(nextp 0){printf(爸爸放入了一个苹果\n);}else{printf(爸爸放入了一个桔子\n);}fflush(stdout);pthread_mutex_unlock(mutex); //互斥锁解锁if(nextp 0){sem_post(apple);}else{sem_post(orange);} nextp 1 - nextp; } } 6、女儿的消费进程 注意这里的消费的东西是apple void *Daughter() {while(1){int time rand() % 10 1; //随机使程序睡眠0点几秒usleep(time * 100000); sem_wait(apple); pthread_mutex_lock(mutex);printf(女儿取了一个苹果\n) ;fflush(stdout);pthread_mutex_unlock(mutex); //互斥锁解锁sem_post(empty);} }
http://www.dnsts.com.cn/news/173579.html

相关文章:

  • 可以在手机上编程的软件seo手机优化软件哪个好用
  • qq代挂网站建设上国外网站的host
  • 淘宝做的网站会不会过期网站推广方法ppt
  • 网站推广计划书模板网站数据库模板下载
  • 中山网站建设如何做企业网站服务
  • 网站已备案 还不能访问福建网站建设开发
  • 充值网站源码php自己用钢管做里闪弹枪视频和照网站
  • 织梦怎么设置网站首页阿里云域名出售
  • 杭州做网站五企业免费建站网站
  • 小说网站的网编具体做哪些工作wordpress树莓派
  • 学网站开发顺序简单flash个人网站
  • 赵公口网站建设北京网站设计wordpress cdn ip
  • 闭站保护对网站影响外贸招聘
  • 企业网站源码推荐成都微信网站制作
  • 网站建设公司的选择网站如何做淘宝推广
  • 外贸网站运营推广辽宁市场网站建设销售
  • 电脑本地网站建设缙云做网站
  • 旅游商城网站模板济南网站推广优化外包
  • 成都营销型网站图片制作视频软件
  • ps做网站尺寸昆山市有没有做网站设计的
  • 吴中区建设局网站网站背景动图怎么做
  • 跨境电商自己做网站引流网站开发后端怎么开发
  • 360网站怎么做ppt营销案例100例小故事及感悟
  • 手机应用下载网站源码卧龙区微网站建设
  • 申请网站建设费用的请示凡科轻站小程序制作平台
  • 个人网站备案需要什么小游戏大全网页版
  • wordpress主题响应式wordpress 百度seo插件
  • 新郑建设局网站中国网站虚拟主机 排名
  • 新闻资讯网站模板网站后台怎么给图片做水印
  • 网站有哪些推荐找别人网站开发没给我源代码