/** * @文件路径: \datacenter\datacenter\inc\queue.h * @作者名称: zjp * @文件版本: V1.0.0 * @创建日期: 2025-02-20 16:03:06 * @简要说明: * @编辑时间: 2025-02-21 14:27:34 * @Copyright: 2025 Shenzhen ShenBao Electrical instruments CO.,LTD. All Rights Reserved. */ #ifndef _DCAPP_DATACENTER_QUENE_H_ #define _DCAPP_DATACENTER_QUENE_H_ #include #include #include #include #include #include #include #include "msg.h" // 消息队列类 class MessageQueue { private: std::queue _queue; // 存储消息的队列 std::mutex mtx; // 保护队列的互斥量 std::condition_variable cv; // 用于线程同步的条件变量 public: MessageQueue(); ~MessageQueue(); // 向队列中添加消息 void push(msg_mqtt_t message); // 从队列中获取消息 msg_mqtt_t pop(); // 从队列中获取消息无阻塞 msg_mqtt_t pop_nonblock(); }; #endif