GoupOS消息队列

限制级使用条件

发送消息函数优先级必须低于接收消息优先级

消息队列支持的消息格式

1
2
3
4
5
typedef enum _msgtype
{
MSG_TYPE_DISCARDABLE = 0, /*!< 可丢弃消息:写入不完整或空间不足时直接丢弃 */
MSG_TYPE_COMPLETE = 1, /*!< 完整消息:必须等待整条消息写入完成,不可丢弃 */
} msgtype; /*!< 消息类型:决定消息写入失败时的处理策略 */
风格 可丢弃 不可丢弃
直白 MSG_TYPE_DISCARDABLE MSG_TYPE_COMPLETE
行为语义 MSG_TYPE_DROP MSG_TYPE_BLOCK(阻塞等待)
可靠性语义 MSG_TYPE_BEST_EFFORT(尽力而为) MSG_TYPE_RELIABLE(可靠)
原子性语义 MSG_TYPE_PARTIAL(允许部分写入) MSG_TYPE_ATOMIC(全写或全不写)