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

微网站 pc端网站开发网站域名查询

微网站 pc端网站开发,网站域名查询,网站建设一般报价多少,建设部住房城乡建设厅网站环形缓冲区 判断是否为空:看读是不是等于写 判断是否写满:写的长度等于buff长度 消息队列 队列是为了任务与任务、任务与中断之间的通信而准备的,可以在任务与任务、任务与中 断之间传递消息,队列中可以存储有限的、大小固定的数…

环形缓冲区

判断是否为空:看读是不是等于写

判断是否写满:写的长度等于buff长度

消息队列

  队列是为了任务与任务、任务与中断之间的通信而准备的,可以在任务与任务、任务与中 断之间传递消息,队列中可以存储有限的、大小固定的数据项目。任务与任务、任务与中断之 间要交流的数据保存在队列中,叫做队列项目。队列所能保存的最大数据项目数量叫做队列的 长度,创建队列的时候会指定数据项目的大小和队列的长度。由于队列用来传递消息的,所以 也称为消息队列。FreeRTOS 中的信号量的也是依据队列实现的!所以有必要深入的了解 FreeRTOS 的队列。

下面几幅图简单的演示了一下队列的入队和出队过程。

 向队列发送第一个信息

图中任务 A 的变量 x 值为 10,将这个值发送到消息队列中。此时队列剩余长度就是 3 了。前面说了向队列中发送消息是采用拷贝的方式,所以一旦消息发送完成变量 x 就可以再 次被使用,赋其他的值。

  向队列发送第二个信息

图中任务 A 又向队列发送了一个消息,即新的 x 的值,这里是 20。此时队列剩余长 度为 2。

图中任务 B 从队列中读取消息,并将读取到的消息值赋值给 y,这样 y 就等于 10 了。任务 B 从队列中读取消息完成以后可以选择清除掉这个消息或者不清除。当选择清除这个 消息的话其他任务或中断就不能获取这个消息了,而且队列剩余大小就会加一,变成 3。如果 不清除的话其他任务或中断也可以获取这个消息,而队列剩余大小依旧是 2。                 
原文链接:https://blog.csdn.net/qq_61672347/article/details/125568639

常用函数

创建队列

QueueHandle_t xQueueCreate( UBaseType_t uxQueueLength, UBaseType_t uxItemSize );

复位

BaseType_t xQueueReset( QueueHandle_t pxQueue);

删除

void vQueueDelete( QueueHandle_t xQueue );

写队列

/* 等同于xQueueSendToBack* 往队列尾部写入数据,如果没有空间,阻塞时间为xTicksToWait*/
BaseType_t xQueueSend(QueueHandle_t    xQueue,const void       *pvItemToQueue,TickType_t       xTicksToWait);/* * 往队列尾部写入数据,如果没有空间,阻塞时间为xTicksToWait*/
BaseType_t xQueueSendToBack(QueueHandle_t    xQueue,const void       *pvItemToQueue,TickType_t       xTicksToWait);/* * 往队列尾部写入数据,此函数可以在中断函数中使用,不可阻塞*/
BaseType_t xQueueSendToBackFromISR(QueueHandle_t xQueue,const void *pvItemToQueue,BaseType_t *pxHigherPriorityTaskWoken);/* * 往队列头部写入数据,如果没有空间,阻塞时间为xTicksToWait*/
BaseType_t xQueueSendToFront(QueueHandle_t    xQueue,const void       *pvItemToQueue,TickType_t       xTicksToWait);/* * 往队列头部写入数据,此函数可以在中断函数中使用,不可阻塞*/
BaseType_t xQueueSendToFrontFromISR(QueueHandle_t xQueue,const void *pvItemToQueue,BaseType_t *pxHigherPriorityTaskWoken);

读队列

BaseType_t xQueueReceive( QueueHandle_t xQueue,void * const pvBuffer,TickType_t xTicksToWait );BaseType_t xQueueReceiveFromISR(QueueHandle_t    xQueue,void             *pvBuffer,BaseType_t       *pxTaskWoken

查看

/** 返回队列中可用数据的个数*/
UBaseType_t uxQueueMessagesWaiting( const QueueHandle_t xQueue );/** 返回队列中可用空间的个数*/
UBaseType_t uxQueueSpacesAvailable( const QueueHandle_t xQueue );
http://www.dtcms.com/wzjs/153981.html

相关文章:

  • 深圳注册公司在什么网站qq关键词排名优化
  • 网站怎么企业备案互联网公司排名
  • 网站优化名词解释企业营销型网站建设
  • 网站制作岗位职责湖南关键词网络科技有限公司
  • 中英网站模板网络营销的现状
  • 包头外贸网站建设聊城网站推广的公司
  • 专门做防盗门的网站seo怎么做教程
  • 免费网站建设怎样真正免费建站网站
  • 网站名称 注册seo网站关键词优化软件
  • 网站商城与网站区别吗产品推广软文200字
  • 远丰做网站怎么样蜜雪冰城网络营销案例分析
  • 网络营销策划书8000字排名优化方法
  • 成都大型网站建设公司痘痘怎么去除有效果
  • 城乡建设杂志官方网站磁力吧
  • java做网站要学什么业务推广平台
  • 网站忧化靠谱seo百度竞价点击价格
  • java可以做网站开发吗长春网站制作设计
  • java做网站的要求自建网站
  • 厦门建设公司网站南京seo建站
  • 高端网站建设企业公司1688关键词怎么优化
  • 网址导航网站制作工具天津seo培训机构
  • ps 做儿童摄影网站首页seo销售代表招聘
  • 网站建设存在的困难关键词搜索引擎优化推广
  • 360建筑网证书估价做网站seo怎么赚钱
  • heritrix做网站深圳广告策划公司
  • g2g有哪些网站招聘网站排名
  • 龙华网站开发2023年8月新冠又来了
  • 江苏首天建设集团网站seo网站推广简历
  • 重庆网站设计制作案例seo包括哪些方面
  • 确定目标是指优化公司排行榜