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

做一组静态页面网站多少钱网页设计制作页面

做一组静态页面网站多少钱,网页设计制作页面,电商网站建设意义,灰色词秒收录代发事件组概述 事件组的作用: 可以等待某一个事件发生可以等待若干个事件发生可以等待若干个事件中的某一个事件发生 同步点是事件组的另一个使用方式,它可以让多个任务进行阻塞等待,当全部事件完成后,再一起解除任务的阻塞。常常…

事件组概述

事件组的作用:

  • 可以等待某一个事件发生
  • 可以等待若干个事件发生
  • 可以等待若干个事件中的某一个事件发生

同步点是事件组的另一个使用方式,它可以让多个任务进行阻塞等待,当全部事件完成后,再一起解除任务的阻塞。常常用于合作关系的情况。

相关函数

创建事件组

函数声明如下:

EventGroupHandle_t xEventGroupCreate( void )

返回值:事件组的句柄

设置事件组

函数声明如下:

EventBits_t xEventGroupSetBits( EventGroupHandle_t xEventGroup,const EventBits_t uxBitsToSet )

xEventGroup:事件组的句柄,设置哪一个事件组

uxBitsToSet :设置哪一个事件,以bit传入,设置bit3就传入 (1<<3),设置多个可用 ‘ | ’实现

等待事件组

函数声明如下:

EventBits_t xEventGroupWaitBits( EventGroupHandle_t xEventGroup,const EventBits_t uxBitsToWaitFor,const BaseType_t xClearOnExit,const BaseType_t xWaitForAllBits,TickType_t xTicksToWait )

xEventGroup:事件组的句柄,设置哪一个事件组

uxBitsToWaitFor:要等待的事件,以bit传入

xClearOnExit:当函数返回之前,是否清除这个事件。传入pdFALSE、pdTRUE

xWaitForAllBits:是否等待全部

  • 传入pdFALSE代表有一个事件发生即可解除阻塞
  • 传入pdTRUE代表必须全部事件发生才可解除阻塞

xTicksToWait :超时时间

同步点

函数声明如下:

EventBits_t xEventGroupSync( EventGroupHandle_t xEventGroup,const EventBits_t uxBitsToSet,const EventBits_t uxBitsToWaitFor,TickType_t xTicksToWait )

xEventGroup:事件组的句柄,设置哪一个事件组

uxBitsToSet:设置自己做完了哪一个事件,以bit传入

uxBitsToWaitFor:要等待哪些事件完成,以bit传入,只有当全部等待的事件完成后才可退出阻塞

xTicksToWait :超时

uxBitsToWaitFor设置的事件都完成后,多个任务会同时从这个函数退出来,不再阻塞。退出函数之后,会自动清除uxBitsToWaitFor设置的事件的位

验证实验

现在有3个任务,任务1在做一件很长时间的事情,任务2也在做一个很长时间的事情,任务3在等待这两个任务中其中一个完成后,打印task finish字符串。

具体代码实现如下:

EventGroupHandle_t xEventHandle_Test;/* 事件组句柄 */
void TaskAFunction(void *param){int i=0;int j=0;while(1){/* 做一个很长时间的任务 */for(i=0;i<10000;i++){j++;}/* 设置事件0 */xEventGroupSetBits(xEventHandle_Test,1<<0);}
}void TaskBFunction(void *param){int i=0;int j=0;while(1){/* 做一个很长时间的任务 */for(i=0;i<20000;i++){j++;}/* 设置事件1 */xEventGroupSetBits(xEventHandle_Test,1<<1);}
}
void TaskCFunction(void *param){while(1){/* 等待事件组,pdFALSE代表等待的事件有一个发生即可解除阻塞 */xEventGroupWaitBits(xEventHandle_Test,(1<<0)|(1<<1),pdTRUE,pdFALSE,portMAX_DELAY);printf("task finish\r\n");}
}int main( void )
{TaskHandle_t xHandleTask1;TaskHandle_t xHandleTask2;TaskHandle_t xHandleTask3;prvSetupHardware();SerialPortInit();printf("UART TEST\r\n");/* 创建事件组 */xEventHandle_Test = xEventGroupCreate();xTaskCreate(TaskAFunction,"TaskA",100,(void*)NULL,1,&xHandleTask1);xTaskCreate(TaskBFunction,"TaskB",100,(void*)NULL,1,&xHandleTask2);xTaskCreate(TaskCFunction,"TaskC",100,(void*)NULL,1,&xHandleTask3);vTaskStartScheduler();return 0;
}
http://www.yayakq.cn/news/740679/

相关文章:

  • 挂甲寺网站建设wordpress整站无刷新
  • 苗木企业网站源码惠州seo按天付费
  • 绥德网站建设国外设交网站开发客户的重要性
  • 电商网站开发常用代码家具设计网站推荐
  • 怎么做倒计时网站专业俄语网站设计
  • 合肥正规的seo公司长沙谷歌seo
  • 商务网站建设心得体会普洱建设单位网站
  • 猎头公司网站建设方案微信小程序定制开发需要多少钱
  • 长网址转短网址网站网站开发者常见问题
  • 小型企业建设网站logofree制作网站
  • 云南固恒建设集团有限公司网站网站备案需要多长时间
  • 网站升级每天自动更新网上怎么发布广告
  • 太原免费静态网站制作网站快慢由什么决定
  • 网站3d特效源码商丘网站推广
  • 360网站建设的目标是什么校园门户网站系统建设关键技术
  • 杭州网站建设价格搭建wordpress服务器
  • 网站未备案会怎么样科技政策要聚焦自立自强
  • 网站优化分析百度登录页
  • 嘉兴云建站模板响水做网站的
  • 濮阳网站优化公司哪家好做中国旅游网站的目的与必要性
  • 昆明做网站建设怎么样python 爬虫 做网站
  • 企业网站托管和网站建设服务商优化图片大小的网站
  • 网站在百度上搜不到了诸城网站建设0536s
  • 智能网站平台百度竞价推广屏蔽软件
  • 龙岗网站设计讯息网站策划书最后一步怎么做
  • 网站 做 app开发长沙网站制作哪家好
  • 网站建设服务器一般多少钱芜湖推广公司
  • 保山便宜的网站建设网络运维工程师工作内容
  • 服装网站建设与实现一级A做爰片秋欲浓网站
  • 郑州网站建设公司有哪些网站热力图怎么做