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

做网站游戏推广赚钱吗地方网站的建设

做网站游戏推广赚钱吗,地方网站的建设,清华大学自动化系,平面设计培训班要学多久Message Buffer(消息缓冲区)与Stream Buffer(流数据缓冲区)类似,但有2点不同: Message Buffer每次只接收1次完整的Message;Message Buffer接收缓冲区小于1条Message大小时,会接收不到数据&#…
  • Message Buffer(消息缓冲区)与Stream Buffer(流数据缓冲区)类似,但有2点不同:
    • Message Buffer每次只接收1次完整的Message;
    • Message Buffer接收缓冲区小于1条Message大小时,会接收不到数据;

一、Message Buffer每次直接收1条完整的Message

1.API简介

(1)创建Message Buffer

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(2)从消息缓冲区中接收数据

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(3)向消息缓冲区中发送数据

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2.示例代码及运行结果

#include <stdio.h>
#include <inttypes.h>
#include "sdkconfig.h"
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "esp_chip_info.h"
#include "esp_flash.h"
#include "freertos/message_buffer.h"    // add by lxl
#include "string.h"                     // add by lxlMessageBufferHandle_t xMessageBuffer;void Task1(void *pvparam)
{char tx_buf[50] = {0};int str_len = 0;size_t send_len=0;for(int i=0; i<3; i++){str_len = sprintf(tx_buf, "Hello, Data_%d", i);send_len = xMessageBufferSend(xMessageBuffer, (void *)tx_buf, str_len, portMAX_DELAY);printf("i=%d; Send Data Len:%d, String Len:%d\n", i, send_len, str_len);}vTaskDelete(NULL);
}void Task2(void *pvparam)
{char rx_buf[200] = {0};size_t recv_len=0;vTaskDelay(pdMS_TO_TICKS(3000));while(1){memset(rx_buf, 0, sizeof(rx_buf));recv_len = xMessageBufferReceive(xMessageBuffer, rx_buf, sizeof(rx_buf), portMAX_DELAY);  //! 调用该API时,流数据缓冲区中要为空,否则就会先把数据接收完成后再进入阻塞状态if(recv_len > 0){printf("Recv Data Len:%d;Recv Data:%s\n", recv_len, rx_buf);}vTaskDelay(pdMS_TO_TICKS(1000));}
}void app_main(void)
{xMessageBuffer = xMessageBufferCreate(1000);if( xMessageBuffer == NULL ){printf("Create Message Buffer Fail!\n");}else{vTaskSuspendAll();xTaskCreatePinnedToCore(Task1, "Task1", 1024*5, NULL, 1, NULL, 1);  //! ESP32-S3为双核,CPU0主要运行WiFi和蓝牙;CPU1用于运行应用程序;xTaskCreatePinnedToCore(Task2, "Task2", 1024*5, NULL, 1, NULL, 1);xTaskResumeAll();}
}

在这里插入图片描述

二、Message接收API的接收缓冲区的小于1条Message大小时,会接收不到数据

示例代码及运行结果

#include <stdio.h>
#include <inttypes.h>
#include "sdkconfig.h"
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "esp_chip_info.h"
#include "esp_flash.h"
#include "freertos/Message_buffer.h"    // add by lxl
#include "string.h"                     // add by lxlMessageBufferHandle_t xMessageBuffer;void Task1(void *pvparam)
{char tx_buf[50] = {0};int str_len = 0;size_t send_len=0;for(int i=0; i<3; i++){str_len = sprintf(tx_buf, "Hello, Data_%d", i);send_len = xMessageBufferSend(xMessageBuffer, (void *)tx_buf, str_len, portMAX_DELAY);printf("i=%d; Send Data Len:%d, String Len:%d\n", i, send_len, str_len);}vTaskDelete(NULL);
}void Task2(void *pvparam)
{char rx_buf[10] = {0};size_t recv_len=0;vTaskDelay(pdMS_TO_TICKS(3000));while(1){memset(rx_buf, 0, sizeof(rx_buf));recv_len = xMessageBufferReceive(xMessageBuffer, rx_buf, sizeof(rx_buf), portMAX_DELAY);  //! 调用该API时,流数据缓冲区中要为空,否则就会先把数据接收完成后再进入阻塞状态printf("Recv Data Len:%d;Recv Data:%s\n", recv_len, rx_buf);vTaskDelay(pdMS_TO_TICKS(1000));}
}void app_main(void)
{xMessageBuffer = xMessageBufferCreate(1000);if( xMessageBuffer == NULL ){printf("Create Message Buffer Fail!\n");}else{vTaskSuspendAll();xTaskCreatePinnedToCore(Task1, "Task1", 1024*5, NULL, 1, NULL, 1);  //! ESP32-S3为双核,CPU0主要运行WiFi和蓝牙;CPU1用于运行应用程序;xTaskCreatePinnedToCore(Task2, "Task2", 1024*5, NULL, 1, NULL, 1);xTaskResumeAll();}
}

在这里插入图片描述


文章转载自:

http://Mesih7dA.wcqxj.cn
http://kjZbyJ5x.wcqxj.cn
http://duvIw4cR.wcqxj.cn
http://njn82pYC.wcqxj.cn
http://Yqdr56Zq.wcqxj.cn
http://p8NmEGNx.wcqxj.cn
http://K0tXfzAq.wcqxj.cn
http://LUpDaNmR.wcqxj.cn
http://3ZowEWmz.wcqxj.cn
http://TwqHcKv6.wcqxj.cn
http://t21n4nry.wcqxj.cn
http://5h3l2Ghs.wcqxj.cn
http://O2XWkG3p.wcqxj.cn
http://Y2475qsn.wcqxj.cn
http://e7p2Iqay.wcqxj.cn
http://f1Oj2XNh.wcqxj.cn
http://edHHMUjr.wcqxj.cn
http://fPrN0xDG.wcqxj.cn
http://mggMxgiK.wcqxj.cn
http://wl519YJr.wcqxj.cn
http://XUFoLum8.wcqxj.cn
http://uQmED18O.wcqxj.cn
http://eoZuasQC.wcqxj.cn
http://9KTWh7Zf.wcqxj.cn
http://9wzB1QwC.wcqxj.cn
http://wmx8JLkg.wcqxj.cn
http://I7cq9ASs.wcqxj.cn
http://GvkVB0Dx.wcqxj.cn
http://g67tEEgv.wcqxj.cn
http://EkcoTrIR.wcqxj.cn
http://www.dtcms.com/wzjs/734981.html

相关文章:

  • 网上智慧团建网站我的世界的头怎么做视频网站
  • wordpress搭建淘客网站工业设计专业就业方向
  • 修改网站备案信息做网站可以没有框架吗
  • 企业做网站需要哪些材料站长之家关键词挖掘工具
  • 网站备案幕布申请网站建设的报告
  • 中医协会网站建设方案网站 免备案
  • 安徽天长建设局网站网络策划书范文
  • 上海企业营销型网站建设广告最多的浏览器
  • 中国建设银行网站查余额网站 建设 网站设计公司
  • 学习网页制作的网站家政公司简介模板
  • wordpress网站制作wordpress+培训模板
  • 励志做的很好的网站未来科技
  • 哪些网站可以免费看剧包头网站建设公司哪家好
  • 大数据平台建站seo应用领域有哪些
  • 家用宽带做网站购物网站网页设计图片
  • 怎么在建设厅网站报名西安建设城市信息网站
  • 移动端快速建站html爱心特效代码
  • 网站建设与维修2019做网站seo行不行
  • 福建省铁路建设办公室网站潍坊有哪些网站
  • 办一个网站要多少钱温州红酒网站建设
  • 网站加地图标记万博法务网站建设项目
  • 贵州省建设厅实名认证网站营销培训去哪个学校好
  • 手机版网站开发框架关于网站建设费用
  • 网站规划书的内容有哪些建筑设计为何没人干了
  • 做网站如何突出网站特色登陆Wordpress手机app
  • wordpress 企业网站 授权费运城可以做网站的公司
  • 建设工程教育官方网站成都房产网签查询
  • 网站的虚拟主机到期深圳网页设计兴田德润i简介
  • 正能量网站入口不用下载做运营需要具备什么能力
  • 网站视频主持人制作长沙服务好的网络营销