http://blog.csdn.net/k331922164/article/details/50381736
2015
因为消息邮箱不能存放超过一条消息,所以才弄了个消息队列,这样,不需要使用互斥量了。
消息队列可以存放多条消息。
具体效果跟使用互斥量的消息邮箱是一样的,如下图所示:
1、CoCreateQueue(),创建一个消息队列
OS_EventID CoCreateQueue(void **qStart, U16 size ,U8 sortType);
qStart,是存放消息的二维指针。
size,需要存放的消息条数。
sortType,跟邮箱的一样,也分FIFO和PRIO两种优先级。
2、CoPendQueueMail(),等待消息
void* CoPendQueueMail(OS_EventID id,U32 timeout,StatusType* perr);
timeout,等待消息的时限。
perr,返回的错误信息。
3、CoPostQueueMail(),发送消息
StatusType CoPostQueueMail(OS_EventID id,void* pmail);
pmail就是要发送的消息,这里使用字符串就可以了。
联系客服