日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

RT-Thread軟件包,RyanMqtt 2.0 發(fā)布,全面重構:更輕、更快、更安全、更可靠 | 技術集結

RT-Thread官方賬號 ? 2025-12-09 18:27 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

RyanMqtt 2.0

RT-Thread 社區(qū)精品軟件包 RyanMqtt 發(fā)布 2.0 新版本!
更輕、更快、更安全、更可靠,為你的物聯(lián)網(wǎng)連接注入新動力。

軟件包地址:https://packages.rt-thread.org/detail.html?package=RyanMqtt

原文鏈接,歡迎討論:https://club.rt-thread.org/ask/article/3d5f29ae6ac922e0.html

核心亮點

維度

變更類型

核心價值

協(xié)議棧

Paho MQTT Embedded → coreMQTT

社區(qū)維護活躍、測試覆蓋完善,為未來 MQTT 5.0 支持奠定基礎

運行時安全分析驗證

使用 Sanitizer 進行運行時安全分析驗證

調試階段捕獲內存越界、Use-after-free、數(shù)據(jù)競爭、未定義行為、內存泄漏等問題,提升代碼健壯性與安全性

高質量代碼保障

引入 clang-tidy 和 Cppcheck 進行靜態(tài)分析

高質量代碼保障,接近語法級”零缺陷“,顯著提升可維護性

AI 輔助開發(fā)與審查

使用 coderabbitai 和 Copilot 輔助編碼與代碼審查

AI 輔助開發(fā)與審查,持續(xù)提升代碼質量,構筑安全防線

內存管理優(yōu)化

固定緩沖區(qū) →動態(tài)按需分配

采用按需動態(tài)分配,降低運行內存占用

線程安全強化

更完善的線程安全

支撐復雜線程應用場景,杜絕競態(tài)風險

測試體系升級

新增專項測試

覆蓋廣泛場景,全鏈路內存泄漏檢測,強化穩(wěn)定性與可靠性

公共 API 變化

新增接口

// 批量訂閱/取消訂閱externRyanMqttError_eRyanMqttSubscribeMany(RyanMqttClient_t *client,int32_tcount, RyanMqttSubscribeData_t subscribeManyData[]);externRyanMqttError_eRyanMqttUnSubscribeMany(RyanMqttClient_t *client,int32_tcount, RyanMqttUnSubscribeData_t unSubscribeManyData[]);// 帶用戶數(shù)據(jù)的發(fā)布externRyanMqttError_eRyanMqttPublishAndUserData(RyanMqttClient_t *client,char*topic,uint16_ttopicLen, char*payload,uint32_tpayloadLen, RyanMqttQos_e qos, RyanMqttBool_e retain,void*userData);// 線程安全的訂閱查詢,僅可通過 RyanMqttSafeFreeSubscribeResources 進行安全釋放。externRyanMqttError_eRyanMqttGetSubscribeSafe(RyanMqttClient_t *client, RyanMqttMsgHandler_t **msgHandles, int32_t*subscribeNum);externRyanMqttError_eRyanMqttSafeFreeSubscribeResources(RyanMqttMsgHandler_t *msgHandles,int32_tsubscribeNum);// 訂閱數(shù)量查詢externRyanMqttError_eRyanMqttGetSubscribeTotalCount(RyanMqttClient_t *client,int32_t*subscribeTotalCount);// 獲取 MQTT Config 信息,僅可通過 RyanMqttFreeConfigFromGet 進行安全釋放。externRyanMqttError_eRyanMqttGetConfig(RyanMqttClient_t *client, RyanMqttClientConfig_t **pclientConfig);externRyanMqttError_eRyanMqttFreeConfigFromGet(RyanMqttClientConfig_t *clientConfig);

新增功能價值

接口

用途

優(yōu)勢

SubscribeMany

批量訂閱/取消多個主題

減少網(wǎng)絡往返,提升吞吐效率

PublishAndUserData

發(fā)布消息附帶上下文

回調中可直接讀取用戶數(shù)據(jù),簡化狀態(tài)管理

GetSubscribeSafe

安全查詢訂閱狀態(tài)

內部同步,多線程安全

GetSubscribeTotalCount

獲取訂閱總數(shù)量

便于監(jiān)控與資源調度

平臺抽象層優(yōu)化

1. 統(tǒng)一時間接口

uint32_tplatformUptimeMs(void);

跨平臺毫秒級運行時間

內部處理 32 位回繞,長時間運行穩(wěn)定

2. 網(wǎng)絡收發(fā)模型簡化

收發(fā)接口改為單次調用語義,減少冗余循環(huán)與分支

返回實際傳輸字節(jié)數(shù),更貼近底層行為

異常恢復路徑更明確

測試體系全面升級

新增8 大類專項測試用例,覆蓋從基礎功能到極限壓力場景的全流程驗證:

測試類別

測試目標

1. 客戶端銷毀壓力測試

驗證資源釋放的冪等性與完整性

2. 心跳與超時處理

Keep-Alive、PINGREQ/RESP 機制驗證

3. 消息鏈路完整性(QoS 0/1/2

QoS 0/1/2 消息端到端可靠性驗證

4. 自動/手動重連機制

狀態(tài)機正確性與連接恢復能力

5. 批量/重復訂閱一致性

訂閱表一致性、內存安全、去重邏輯

6. 多客戶端高并發(fā)

20+ 客戶端并發(fā)運行穩(wěn)定性

7. 單客戶端多線程共享(20 線程 × 各 1000 條 QoS1/2 消息)

鎖機制、數(shù)據(jù)一致性、競態(tài)防護

8. 公共API參數(shù)校驗

提升接口健壯性與可用性

測試覆蓋范圍

基礎連接:100 次循環(huán)連接/斷開,混合 QoS 消息與訂閱

消息流控:連續(xù)發(fā)送 QoS0/1/2 等級 1000 條消息,混合 QoS 壓力測試

訂閱管理:批量、大量、重復、混合 QoS 訂閱與取消

并發(fā)壓測:

單客戶端 20 線程 × 各 1000 條 QoS1/2 消息

多客戶端 20 并發(fā)實例進行雙向發(fā)布/訂閱

可靠性:長連接、弱網(wǎng)、Keep-Alive、重連機制驗證

資源安全:全鏈路內存泄漏、句柄泄漏檢測

代碼質量與規(guī)范

工具鏈全面集成

工具

用途

Sanitizer

運行時捕獲內存與線程安全問題

clang-tidy

靜態(tài)分析潛在缺陷(空指針、資源泄漏等)

Cppcheck

深度掃描內存與資源問題

ClangFormat

統(tǒng)一代碼風格

編譯器警告

-Wall -Wextra(默認)、-Weffc++/-Weverything(Clang 可選,CI 強化時開啟)

檢查重點覆蓋

內存安全:杜絕泄漏、越界、懸空指針

性能優(yōu)化:減少冗余拷貝與低效算法

可讀性:命名規(guī)范、注釋完整、邏輯清晰

成果:實現(xiàn)接近語法級”零缺陷“,長期維護成本大幅降低

安全性與可靠性全面提升

公共 API 全面審查

核心數(shù)據(jù)結構訪問均受同步機制保護

動態(tài)內存策略更健壯,異常路徑也能安全釋放

輸入驗證與邊界檢查更嚴格,防御性編程增強

網(wǎng)絡異常處理更完善,弱網(wǎng)環(huán)境下連接恢復更快

錯誤恢復路徑更穩(wěn)健,超時策略更精準

總結

本次 RyanMqtt 2.0 是一次具有里程碑意義的升級:

技術棧現(xiàn)代化:遷移至 coreMQTT,擁抱更活躍的生態(tài)與未來擴展能力

架構更清晰:模塊高度解耦,抽象設計更合理

質量更可信:專項測試 + 靜態(tài)分析 + AI 審查構筑強大防線

性能再優(yōu)化:更低資源占用、更高吞吐效率

維護更輕松:統(tǒng)一代碼規(guī)范、平臺抽象降低長期開發(fā)成本

從 1.x 遷移至 2.x

RyanMqtt 2.0 在設計上盡量減少破壞性變更。升級過程極為簡單:

V1.x升級到V2.x時,需在RyanMqttClientConfig_t結構體中移除以下四個已廢棄字段:

char*recvBuffer; // MQTT 接收緩沖區(qū)(已廢棄)char*sendBuffer; // MQTT 發(fā)送緩沖區(qū)(已廢棄)uint32_trecvBufferSize;// 接收緩沖區(qū)大?。ㄒ褟U棄)uint32_tsendBufferSize;// 發(fā)送緩沖區(qū)大?。ㄒ褟U棄)

受影響的主要接口(其余接口原則上兼容,如有差異以頭文件為準):

RyanMqttError_eRyanMqttSetConfig(RyanMqttClient_t *client, RyanMqttClientConfig_t *clientConfig);// packetType 不再使用enum msgTypes, 新類型請參考 RyanMqttPublic.h 文件內MQTT packet types宏定義RyanMqttError_eRyanMqttDiscardAckHandler(RyanMqttClient_t *client,uint8_tpacketType,uint16_tpacketId);

其余 API 與配置保持兼容,無需額外修改即可完成遷移。若編譯期出現(xiàn)不兼容,請以 mqttclient/include/*.h 中的最新簽名為準。

強烈建議所有用戶都升級到2.0!選擇latest就是2.0版本,已在公司項目運行好幾個月

不準備升級到2.0的用戶可以選擇1.2.1版本,是V1的最后一個版本

RyanMqtt github倉庫

https://github.com/Ryan-CW-Code/RyanMqtt

RT-Thread社區(qū)軟件包:

https://packages.rt-thread.org/detail.html?package=RyanMqtt

20250916更新

RyanMqtt核心庫細節(jié)優(yōu)化、test新增3個測試例程

測試類別

測試目標

隨機網(wǎng)絡故障弱網(wǎng)丟包測試

在弱網(wǎng)及高丟包環(huán)境下,完成 QOS 全等級消息完整性與內存回收驗證

隨機網(wǎng)絡故障內存回收檢測

驗證異常網(wǎng)絡情況下的內存釋放,提升接口健壯性與可用性

隨機內存故障,內存回收測試

驗證內存異常情況下的資源釋放,提升接口健壯性與可用性

20251013更新

修復客戶端銷毀邏輯:在 init 后未執(zhí)行 start 即銷毀時,資源無法釋放的問題

支持零長度字符串:clientId、userName、password 現(xiàn)在允許長度為 0

內存優(yōu)化:降低 Config 內存占用

測試增強:補充對應的單元測試代碼

RT-Thread Github 開源倉庫,歡迎撒個星(Star)支持,更期待你的代碼貢獻:https://github.com/RT-Thread/rt-thread

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 物聯(lián)網(wǎng)

    關注

    2950

    文章

    48147

    瀏覽量

    418825
  • 軟件
    +關注

    關注

    69

    文章

    5364

    瀏覽量

    91947
  • RT-Thread
    +關注

    關注

    32

    文章

    1644

    瀏覽量

    45268
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    RT-Thread 用上 HyperRAM——e2studio 工程配置詳解 | 技術集結

    的帖子中介紹如何在e2sutido中結合RT-Thread的代碼倉庫(使用的是最新的RT-Thread版本),在e2stduio中調試和下載RT-Thread工程。配
    的頭像 發(fā)表于 04-27 18:07 ?6010次閱讀
    讓 <b class='flag-5'>RT-Thread</b> 用上 HyperRAM——e2studio 工程配置詳解 | <b class='flag-5'>技術</b><b class='flag-5'>集結</b>

    RT-Thread任務+消息訂閱管理框架軟件包thread_manager+event_loop

    讀者留言,是否可以支持RT-Thread,索性放假也無聊,所以就整了兩個軟件包:eventloop+thread_manager二.eventloop軟件包一個是
    的頭像 發(fā)表于 04-19 15:39 ?4940次閱讀
    <b class='flag-5'>RT-Thread</b>任務+消息訂閱管理框架<b class='flag-5'>軟件包</b>:<b class='flag-5'>thread</b>_manager+event_loop

    2026 RT-Thread全球技術大會演講征集開始啦!| 技術集結

    RT-ThreadGlobalTechConference(RT-ThreadGTC,RT-Thread全球技術大會)是專注于基礎軟件技術創(chuàng)
    的頭像 發(fā)表于 04-12 10:04 ?394次閱讀
    2026 <b class='flag-5'>RT-Thread</b>全球<b class='flag-5'>技術</b>大會演講征集開始啦!| <b class='flag-5'>技術</b><b class='flag-5'>集結</b>

    RT-Thread 的靈魂伴侶 | 技術集結

    RT-Thread正式啟動硬件產(chǎn)品生態(tài)共建計劃"你有創(chuàng)意,我?guī)湍阃茝V",我們尋找那些藏在工作臺、實驗室和創(chuàng)客空間的嵌入式硬件創(chuàng)意——無論是一塊開發(fā)板、一個智能工具,還是一套完整的解決方案。
    的頭像 發(fā)表于 03-23 19:25 ?6720次閱讀
    <b class='flag-5'>RT-Thread</b> 的靈魂伴侶 | <b class='flag-5'>技術</b><b class='flag-5'>集結</b>

    RT-Thread Vector軟件包:嵌入式開發(fā)的動態(tài)數(shù)組容器 | 技術集結

    RT-Thread Vector軟件包:嵌入式開發(fā)的動態(tài)數(shù)組容器 | 技術集結
    的頭像 發(fā)表于 01-25 09:33 ?5681次閱讀
    <b class='flag-5'>RT-Thread</b> Vector<b class='flag-5'>軟件包</b>:嵌入式開發(fā)的動態(tài)數(shù)組容器 | <b class='flag-5'>技術</b><b class='flag-5'>集結</b>

    手搓一個RT-Thread工地巡檢機器人要幾步? | 技術集結

    本項目為RT-Thread嵌入式大賽獲獎作品,基于CanMVK230的工地巡檢機器人。K230芯片集成了兩顆RISC-V處理器核心,雙核玄鐵C908。RT-Thread全面支持XUANTIE系
    的頭像 發(fā)表于 12-29 21:46 ?4338次閱讀
    手搓一個<b class='flag-5'>RT-Thread</b>工地巡檢機器人要幾步? | <b class='flag-5'>技術</b><b class='flag-5'>集結</b>

    基于RT-Thread的簡單物聯(lián)網(wǎng)溫控箱 | 技術集結

    目錄項目概述RT-Thread使用情況概述硬件框架軟件框架說明演示效果改進方向代碼地址1項目概述本項目是一個簡易的、較高精度的、易于擴展的桌面級溫控系統(tǒng)。實現(xiàn)對箱內溫度的精確控制,并通過Wi-Fi
    的頭像 發(fā)表于 12-26 18:18 ?7463次閱讀
    基于<b class='flag-5'>RT-Thread</b>的簡單物聯(lián)網(wǎng)溫控箱 | <b class='flag-5'>技術</b><b class='flag-5'>集結</b>

    請問RT-Thread Studio更新軟件包為什么不成功?

    RT-Thread Studio更新軟件包出現(xiàn) MESSAGE cmd_package_update 462 WARNING Error message : local variable
    發(fā)表于 09-18 06:36

    Windows上使用ENV工具開發(fā)基于先楫MCU的RT-Thread應用

    前言Env是RT-Thread推出的開發(fā)輔助工具,針對基于RT-Thread操作系統(tǒng)的項目工程,提供編譯構建環(huán)境、圖形化系統(tǒng)配置及軟件包管理功能。其內置的menuconfig提供了簡單易用的配置剪裁
    的頭像 發(fā)表于 08-29 12:22 ?1768次閱讀
    Windows上使用ENV工具開發(fā)基于先楫MCU的<b class='flag-5'>RT-Thread</b>應用

    在Ubuntu上開發(fā)基于先楫MCU的RT-Thread應用指南

    1、前言RT-ThreadEnv是RT-Thread推出的開發(fā)輔助工具,針對基于RT-Thread操作系統(tǒng)的項目工程,提供編譯構建環(huán)境、圖形化系統(tǒng)配置及軟件包管理功能。其內置的menu
    的頭像 發(fā)表于 08-29 12:22 ?2166次閱讀
    在Ubuntu上開發(fā)基于先楫MCU的<b class='flag-5'>RT-Thread</b>應用指南

    【好書推薦】RT-Thread第20本相關書籍!《嵌入式實時操作系統(tǒng)RT-Thread原理與應用》| 技術集結

    01內容簡介ContentSummary本書為讀者提供了一個全面、系統(tǒng)的RT-Thread學習指南,旨在幫助初學者及有經(jīng)驗的開發(fā)者掌握RT-Thread實時操作系統(tǒng)和STM32嵌入式微控制器的核心
    的頭像 發(fā)表于 08-24 10:05 ?1324次閱讀
    【好書推薦】<b class='flag-5'>RT-Thread</b>第20本相關書籍!《嵌入式實時操作系統(tǒng)<b class='flag-5'>RT-Thread</b>原理與應用》| <b class='flag-5'>技術</b><b class='flag-5'>集結</b>

    用SPI玩轉WiFi,RT-Thread ESP-Hosted驅動深度適配指南 | 技術集結

    還在為MCU的WiFi連接方案發(fā)愁?RT-Thread社區(qū)開源ESP-Hosted驅動,通過標準SPI接口即可實現(xiàn),并且該倉庫已整理成RT-Thread軟件包。RT
    的頭像 發(fā)表于 07-09 19:03 ?1916次閱讀
    用SPI玩轉WiFi,<b class='flag-5'>RT-Thread</b> ESP-Hosted驅動深度適配指南 | <b class='flag-5'>技術</b><b class='flag-5'>集結</b>

    讓開發(fā)板暢游網(wǎng)絡:RT-Thread CherryUSB 驅動 RNDIS 模塊詳解 | 技術集結

    本文通過在RT-Thread操作系統(tǒng)上,使用CherryUSB軟件包作為USBHost協(xié)議棧,驅動AIR780E4GCat.1模塊的RNDIS功能,并成功接入lwIP網(wǎng)絡協(xié)議棧,最終在開發(fā)板上實現(xiàn)了
    的頭像 發(fā)表于 07-02 17:04 ?3810次閱讀
    讓開發(fā)板暢游網(wǎng)絡:<b class='flag-5'>RT-Thread</b> CherryUSB 驅動 RNDIS 模塊詳解 | <b class='flag-5'>技術</b><b class='flag-5'>集結</b>

    2025 RT-Thread全球技術大會議程正式發(fā)布!

    RT-ThreadGlobalTechConference(RT-ThreadGTC,RT-Thread全球技術大會)是聚焦基礎軟件技術創(chuàng)新
    的頭像 發(fā)表于 05-27 19:28 ?1579次閱讀
    2025 <b class='flag-5'>RT-Thread</b>全球<b class='flag-5'>技術</b>大會議程正式<b class='flag-5'>發(fā)布</b>!

    RT-Thread Studio更新軟件包為什么不成功呢?

    RT-Thread Studio更新軟件包出現(xiàn) MESSAGE cmd_package_update 462 WARNING Error message : local variable
    發(fā)表于 05-27 06:53
    新余市| 庆元县| 逊克县| 曲水县| 房产| 米脂县| 武城县| 江西省| 扎兰屯市| 肃南| 新昌县| 保德县| 疏附县| 贵州省| 太保市| 井冈山市| 扶风县| 靖江市| 宜州市| 繁峙县| 阿荣旗| 潞西市| 康平县| 宜城市| 阿合奇县| 东宁县| 高阳县| 泰来县| 永善县| 鞍山市| 静安区| 河西区| 宁夏| 大连市| 兴海县| 勐海县| 忻城县| 莎车县| 南华县| 齐河县| 吉隆县|