# async_msg_manager **Repository Path**: ihavec/async_msg_manager ## Basic Information - **Project Name**: async_msg_manager - **Description**: 一个简单的异步消息处理 - **Primary Language**: C - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2023-01-22 - **Last Updated**: 2023-01-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 说明 提供一个基本的异步的消息处理方法。 主要包含: - 消息发送时将消息加入定时器; - 将消息加入到红黑树里; - 消息如果有回应,先从红黑树查找是不是自己发出去的,是的话,处理消息,则将其从定时器里删除,同时从红黑树里删除; - 消息如果超时,则将其从红黑树里删除,不再响应。 # 注意事项 在消息处理的回调中,在红黑树中搜索到消息后,将其引用计数+1,防止这时定时时间到,将消息释放。 # 依赖 用的是mqtt消息做的测试,根目录的ext中有针对HISI和linux的libmoquitto动态库。 # 优点 - 红黑树的高效 - 时间轮的高效 - 引用计数对对象的维护 - 接口简单 # 编译 ### linux平台 make TARGET_PLATFORM=UBUNTU clean all ### HISI平台 make TARGET_PLATFORM=HIS clean all # 执行: ./release/release.bin