推送消息队列管理 更多...
#include <message.hpp>
Public 类型 | |
using | ptr = std::shared_ptr< QueueMessage > |
Public 成员函数 | |
QueueMessage (std::string &basedir, const std::string &qname) | |
推送消息队列构造函数 恢复历史消息 | |
void | recovery () |
恢复历史消息 | |
bool | insert (const BasicProperties *bp, const std::string &body, bool queue_id_durable) |
插入推送消息队列 | |
MessagePtr | front () |
获取队头消息 | |
bool | remove (const std::string &msg_id) |
移除接收到确认ack的消息 | |
size_t | availableCount () |
获取可获取消息数量 | |
size_t | totalCount () |
获取总消息数量 | |
size_t | waitAckCount () |
获取待确认消息数量 | |
size_t | durableCount () |
获取持久化消息数量 | |
void | clear () |
清空数据 | |
Private 成员函数 | |
bool | garbageCollectionCheck () |
垃圾回收条件检测 | |
void | garbageCollection () |
垃圾回收 | |
Private 属性 | |
std::mutex | _mutex |
互斥锁 | |
std::string | _qname |
队列名称 | |
size_t | _valid_count |
有效消息数量 | |
size_t | _total_count |
总消息数量 | |
MessageMapper | _mapper |
消息队列持久化管理类 | |
std::list< MessagePtr > | _msgs |
待推送消息列表 | |
std::unordered_map< std::string, MessagePtr > | _durable_msgs |
持久化消息映射表 | |
std::unordered_map< std::string, MessagePtr > | _waitack_msgs |
待确认消息映射表 | |
推送消息队列管理
using XuMQ::QueueMessage::ptr = std::shared_ptr<QueueMessage> |
|
inline |
推送消息队列构造函数 恢复历史消息
basedir | 基础目录 |
qname | 队列名称 |
|
inline |
获取可获取消息数量
|
inline |
清空数据
|
inline |
获取持久化消息数量
|
inline |
获取队头消息
|
inlineprivate |
垃圾回收
|
inlineprivate |
垃圾回收条件检测
|
inline |
插入推送消息队列
bp | 消息属性 |
body | 消息内容主体 |
delivery_mode | 持久化标志 |
|
inline |
恢复历史消息
|
inline |
移除接收到确认ack的消息
msg_id | 消息id |
|
inline |
获取总消息数量
|
inline |
获取待确认消息数量
|
private |
持久化消息映射表
|
private |
消息队列持久化管理类
|
private |
待推送消息列表
|
private |
互斥锁
|
private |
队列名称
|
private |
总消息数量
|
private |
有效消息数量
|
private |
待确认消息映射表