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

企业网站开发培训百度推广全国代理商排名

企业网站开发培训,百度推广全国代理商排名,重庆seo网站策划,微信出售平台效果如下图: 给大家解释一下上述效果:在左侧(顶格)的是生产者(Producer);在右侧(空格)的是消费者(Consumer)。生产者有1个,代号为“0”…

效果如下图:

给大家解释一下上述效果:在左侧(顶格)的是生产者(Producer);在右侧(空格)的是消费者(Consumer)。生产者有1个,代号为“0”;消费者有2个,代号分别为“0”和“1”。

生产者首先生产出一个产品,输出“is producing Product”。然后唤醒消费者来消费,输出“is waking Consumer”。

消费者生成时会报告自己的信息,比如“I am Consumer 0”代表它是0号消费者。如果有东西可以消费,它会输出“Consumer 代号 consume product success!!!!”代表消费成功。

程序实现的效果是:生产者不断生产“产品”,然后消费者“0”和“1”不断进行消费,如此循环往复。

代码非常简单,如下:

#include <stdlib.h>                                                      
#include <stdio.h>
#include <unistd.h>
#include <sys/mman.h>
#include <pthread.h>#define CONSUMER_NUM 2#define PRODUCER_NUM 1pthread_t pids[CONSUMER_NUM+PRODUCER_NUM];int ready = 0;
int running =1;pthread_mutex_t mutex;pthread_cond_t has_product;void* producer(void* arg){int no = (int)arg;while(running){pthread_mutex_lock(&mutex);ready++;printf("Producer %d is producing Product\n",no);fflush(stdout); pthread_cond_signal(&has_product);printf("Producer %d is waking Consumer\n",no);fflush(stdout); pthread_mutex_unlock(&mutex);sleep(1);}
return NULL;
}void* consumer(void* arg){int num = (int)arg;while(running){pthread_mutex_lock(&mutex); while(ready==0){printf("\tConsumer %d is waiting...\n",num);fflush(stdout); pthread_cond_wait(&has_product,&mutex);}ready--;printf("\tConsumer %d consume product success!!!!!\n",num);fflush(stdout); pthread_mutex_unlock(&mutex);sleep(3);}
return NULL;
}void HxSyscall(int num){                                          pthread_mutex_init(&mutex,NULL);pthread_cond_init(&has_product,NULL);printf("init success!\n");int i;int thread_ids[CONSUMER_NUM + PRODUCER_NUM]; for(i=0; i<PRODUCER_NUM; i++){thread_ids[i] = i;pthread_create(&pids[i], NULL, producer, (void*)i);}for(i=0; i<CONSUMER_NUM; i++){printf("\tI am Consumer %d \n",i);fflush(stdout); sleep(2);thread_ids[PRODUCER_NUM + i] = i;pthread_create(&pids[PRODUCER_NUM + i], NULL, consumer, (void*)i);}for(i=0; i<PRODUCER_NUM + CONSUMER_NUM; i++){pthread_join(pids[i], NULL);}pthread_mutex_destroy(&mutex);pthread_cond_destroy(&has_product);return;
}

大家只需要按照project1的方式,将上述代码放入home/openharmony/kernel/liteos_a/syscall下的hx_syscall.c文件夹下即可(这里为了方便基础较薄弱的同学操作,所以我们仍旧采用勖哥在pro1中的函数命名),接下来大家只需要按照pro1的方式进行编译烧录即可运行。

【如果觉得有帮助记得点赞+收藏​​​​​​⭐】

http://www.mmbaike.com/news/45083.html

相关文章:

  • 重庆做网站公司电话友链出售
  • discuz网站搬家互联网营销师考试题库
  • 上海c网站建设品牌营销理论
  • 网站文章后台写完前台不显示百度人工服务热线
  • 河间网站建设搜索引擎优化的方法有哪些?
  • 物联网应用技术学什么上海优化外包
  • wordpress theme demo韶关seo
  • 如何用服务器ip地址做网站手机黄页怎么找
  • 优质的天津网站建设产品推广活动策划方案
  • 网站设计专业杭州余杭区抖音seo质量高
  • 东莞市网站建设分站如何进行线上推广
  • 自己做的网站能放到阿里云上黄冈便宜的网站推广怎么做
  • 网站建设导航栏设计引擎优化搜索
  • 厦门做网站刷推广链接人数的软件
  • 按天计费的seo弊端seo查询系统源码
  • 网站设计标准吉林网站推广公司
  • 三网合一网站建设方案网页制作
  • 安徽定制型网站建设推广百度搜索风云榜总榜
  • 南沙滩网站建设seo优化工作内容做什么
  • 目前做网站需要什么cms网络软文推广网站
  • 同一虚拟空间做两个网站太原模板建站定制网站
  • 建站广告赚钱seo建站需求
  • 上海做网站yuanmus关键词推广怎么做
  • 欧美做同志网站空间seo广告平台
  • 推广网站怎么做知乎最佳磁力搜索引擎
  • 什么网站可以自己做字营销策略包括哪些内容
  • 企业信息平台网站官网seo管理软件
  • 深圳建设局官方网站网页设计培训学校
  • 商城网站微信支付接口申请seo去哪学
  • wordpress怎么装主题seo网站优化方案摘要